{"version":3,"sources":["webpack:///./~/moment/locale ^\\.\\/.*$","webpack:///./src/app/vue/accueil.component.html","webpack:///./src/app/vue/detail-message.component.html","webpack:///./src/app/vue/evenement-detail.html","webpack:///./src/app/vue/evenementList.html","webpack:///./src/app/vue/groupe-detail.component.html","webpack:///./src/app/vue/groupesList.component.html","webpack:///./src/app/vue/header.component.html","webpack:///./src/app/vue/liste-objets.component.html","webpack:///./src/app/vue/login-password-temporaire.html","webpack:///./src/app/vue/login.component.html","webpack:///./src/app/vue/mdp_oublie.component.html","webpack:///./src/app/vue/navbar.component.html","webpack:///./src/app/vue/personne-detail.component.html","webpack:///./src/app/vue/personneList.component.html","webpack:///./src/app/vue/production-album-detail.component.html","webpack:///./src/app/vue/production-morceau-detail.component.html","webpack:///./src/app/vue/productionList.component.html","webpack:///./src/app/vue/test-page.component.html","webpack:///./src/app/vue/utilisateur-detail.component.html","webpack:///./src/app/vue/utilisateur-inscription.component.html","webpack:///./src/app/vue/utilisateur-list.component.html","webpack:///./src/app/vue/utilisateur-mon-compte.component.html","webpack:///./src/app/components/tag/p-tag.component.css","webpack:///./src/app/components/abstract-all.component.ts","webpack:///./src/app/objets/AbstractObjets.ts","webpack:///./src/app/services/evenement-service.ts","webpack:///./src/app/services/groupe-service.ts","webpack:///./src/app/components/abstract-error-page.component.ts","webpack:///./src/app/objets/ObjSimple.ts","webpack:///./src/app/components/tag/p-create-simple.component.css","webpack:///./src/app/services/lieu-service.ts","webpack:///./src/app/vue/abstract-error-page.component.html","webpack:///./src/app/services/production-service.ts","webpack:///./src/app/services/utilisateur-service.ts","webpack:///./src/app/services/utils.service.ts","webpack:///./src/app/objets/FilePind.ts","webpack:///./src/app/objets/ProductionAlbum.ts","webpack:///./src/app/services/general-service.ts","webpack:///./src/app/services/personnne-service.ts","webpack:///./src async","webpack:///./src/main.ts","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/components/Test-tag.component.ts","webpack:///./src/app/components/accueil.component.ts","webpack:///./src/app/components/error-droit-access.component.ts","webpack:///./src/app/components/error-page-notFound.component.ts","webpack:///./src/app/components/error-page.component.ts","webpack:///./src/app/components/error-time-out-session.component.ts","webpack:///./src/app/components/evenement-detail.component.ts","webpack:///./src/app/components/evenementList.component.ts","webpack:///./src/app/components/groupe-detail.component.ts","webpack:///./src/app/components/groupesList.component.ts","webpack:///./src/app/components/header.component.ts","webpack:///./src/app/components/liste-objets.component.ts","webpack:///./src/app/components/login-password-temporaire.component.ts","webpack:///./src/app/components/login.component.ts","webpack:///./src/app/components/mdp-oublie.component.ts","webpack:///./src/app/components/navbar.component.ts","webpack:///./src/app/components/personneDetail.component.ts","webpack:///./src/app/components/personneList.component.ts","webpack:///./src/app/components/production-album-detail.component.ts","webpack:///./src/app/components/production-morceau-detail.component.ts","webpack:///./src/app/components/productionList.component.ts","webpack:///./src/app/components/tag/detail-info-utilisateur.component.ts","webpack:///./src/app/components/tag/detail-message.component.ts","webpack:///./src/app/components/tag/p-auto-complete-lieu-api.component.ts","webpack:///./src/app/components/tag/p-auto-complete.component.ts","webpack:///./src/app/components/tag/p-create-album-simple.component.ts","webpack:///./src/app/components/tag/p-create-categorie-album-simple.component.ts","webpack:///./src/app/components/tag/p-create-entreprise-simple.component.ts","webpack:///./src/app/components/tag/p-create-genre-simple.component.ts","webpack:///./src/app/components/tag/p-create-groupe-simple.component.ts","webpack:///./src/app/components/tag/p-create-langue-simple.component.ts","webpack:///./src/app/components/tag/p-create-lieu-simple.component.ts","webpack:///./src/app/components/tag/p-create-mastering-simple.component.ts","webpack:///./src/app/components/tag/p-create-mixage-simple.component.ts","webpack:///./src/app/components/tag/p-create-morceau-simple.component.ts","webpack:///./src/app/components/tag/p-create-organologie-simple.component.ts","webpack:///./src/app/components/tag/p-create-personne-role-simple.component.ts","webpack:///./src/app/objets/UtilisateurEnum.ts","webpack:///./src/app/components/tag/p-create-personne-simple.component.ts","webpack:///./src/app/components/tag/p-create-role-simple.component.ts","webpack:///./src/app/components/tag/p-create-studio-simple.component.ts","webpack:///./src/app/components/tag/p-create-subdivision-simple.component.ts","webpack:///./src/app/components/tag/p-create-support-simple.component.ts","webpack:///./src/app/components/tag/p-create-tonalite-simple.component.ts","webpack:///./src/app/components/tag/p-create-type-album-simple.component.ts","webpack:///./src/app/components/tag/p-create-type-evenement-simple.component.ts","webpack:///./src/app/components/tag/p-file.component.ts","webpack:///./src/app/components/tag/p-input.component.ts","webpack:///./src/app/services/file-service.ts","webpack:///./src/app/components/tag/p-label.component.ts","webpack:///./src/app/components/tag/p-select.component.ts","webpack:///./src/app/components/test-page.component.ts","webpack:///./src/app/components/test.component.ts","webpack:///./src/app/components/utilisateur-detail.component.ts","webpack:///./src/app/components/utilisateur-inscription.component.ts","webpack:///./src/app/components/utilisateur-list.component.ts","webpack:///./src/app/components/utilisateur-mon-compte.component.ts","webpack:///./src/app/objets/Evenement-detail.ts","webpack:///./src/app/objets/Evenement-search.ts","webpack:///./src/app/services/services.config.ts","webpack:///./src/app/objets/Groupe.ts","webpack:///./src/app/objets/Personne-detail.ts","webpack:///./src/app/objets/Personne-search.ts","webpack:///./src/app/objets/ProductionMorceau.ts","webpack:///./src/app/objets/ProductionSearch.ts","webpack:///./src/app/objets/UtilisateurInscription.ts","webpack:///./src/app/objets/UtilisateurModification.ts","webpack:///./src/app/objets/UtilisateurSearch.ts","webpack:///./src/app/pipe/format.ts","webpack:///./src/app/pipe/orderBy.ts","webpack:///./src/environments/environment.ts","webpack:///./src/app/components/AbstractDetail.component.ts","webpack:///./src/app/components/abstract-search.compenent.ts"],"names":[],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChNA,mmBAAmmB,uCAAuC,KAAK,qBAAqB,GAAG,2BAA2B,MAAM,qBAAqB,mCAAmC,wBAAwB,WAAW,4BAA4B,mrC;;;;;;;ACA/zB,6+DAA6+D,UAAU,woC;;;;;;;ACAv/D,u8EAAu8E,UA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QACzB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QACzB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QACzB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QACzB,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC;QAC1B,EAAE,C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","file":"main.bundle.js","sourcesContent":["var map = {\n\t\"./af\": 465,\n\t\"./af.js\": 465,\n\t\"./ar\": 469,\n\t\"./ar-ma\": 466,\n\t\"./ar-ma.js\": 466,\n\t\"./ar-sa\": 467,\n\t\"./ar-sa.js\": 467,\n\t\"./ar-tn\": 468,\n\t\"./ar-tn.js\": 468,\n\t\"./ar.js\": 469,\n\t\"./az\": 470,\n\t\"./az.js\": 470,\n\t\"./be\": 471,\n\t\"./be.js\": 471,\n\t\"./bg\": 472,\n\t\"./bg.js\": 472,\n\t\"./bn\": 473,\n\t\"./bn.js\": 473,\n\t\"./bo\": 474,\n\t\"./bo.js\": 474,\n\t\"./br\": 475,\n\t\"./br.js\": 475,\n\t\"./bs\": 476,\n\t\"./bs.js\": 476,\n\t\"./ca\": 477,\n\t\"./ca.js\": 477,\n\t\"./cs\": 478,\n\t\"./cs.js\": 478,\n\t\"./cv\": 479,\n\t\"./cv.js\": 479,\n\t\"./cy\": 480,\n\t\"./cy.js\": 480,\n\t\"./da\": 481,\n\t\"./da.js\": 481,\n\t\"./de\": 483,\n\t\"./de-at\": 482,\n\t\"./de-at.js\": 482,\n\t\"./de.js\": 483,\n\t\"./dv\": 484,\n\t\"./dv.js\": 484,\n\t\"./el\": 485,\n\t\"./el.js\": 485,\n\t\"./en-au\": 486,\n\t\"./en-au.js\": 486,\n\t\"./en-ca\": 487,\n\t\"./en-ca.js\": 487,\n\t\"./en-gb\": 488,\n\t\"./en-gb.js\": 488,\n\t\"./en-ie\": 489,\n\t\"./en-ie.js\": 489,\n\t\"./en-nz\": 490,\n\t\"./en-nz.js\": 490,\n\t\"./eo\": 491,\n\t\"./eo.js\": 491,\n\t\"./es\": 492,\n\t\"./es.js\": 492,\n\t\"./et\": 493,\n\t\"./et.js\": 493,\n\t\"./eu\": 494,\n\t\"./eu.js\": 494,\n\t\"./fa\": 495,\n\t\"./fa.js\": 495,\n\t\"./fi\": 496,\n\t\"./fi.js\": 496,\n\t\"./fo\": 497,\n\t\"./fo.js\": 497,\n\t\"./fr\": 500,\n\t\"./fr-ca\": 498,\n\t\"./fr-ca.js\": 498,\n\t\"./fr-ch\": 499,\n\t\"./fr-ch.js\": 499,\n\t\"./fr.js\": 500,\n\t\"./fy\": 501,\n\t\"./fy.js\": 501,\n\t\"./gd\": 502,\n\t\"./gd.js\": 502,\n\t\"./gl\": 503,\n\t\"./gl.js\": 503,\n\t\"./he\": 504,\n\t\"./he.js\": 504,\n\t\"./hi\": 505,\n\t\"./hi.js\": 505,\n\t\"./hr\": 506,\n\t\"./hr.js\": 506,\n\t\"./hu\": 507,\n\t\"./hu.js\": 507,\n\t\"./hy-am\": 508,\n\t\"./hy-am.js\": 508,\n\t\"./id\": 509,\n\t\"./id.js\": 509,\n\t\"./is\": 510,\n\t\"./is.js\": 510,\n\t\"./it\": 511,\n\t\"./it.js\": 511,\n\t\"./ja\": 512,\n\t\"./ja.js\": 512,\n\t\"./jv\": 513,\n\t\"./jv.js\": 513,\n\t\"./ka\": 514,\n\t\"./ka.js\": 514,\n\t\"./kk\": 515,\n\t\"./kk.js\": 515,\n\t\"./km\": 516,\n\t\"./km.js\": 516,\n\t\"./ko\": 517,\n\t\"./ko.js\": 517,\n\t\"./lb\": 518,\n\t\"./lb.js\": 518,\n\t\"./lo\": 519,\n\t\"./lo.js\": 519,\n\t\"./lt\": 520,\n\t\"./lt.js\": 520,\n\t\"./lv\": 521,\n\t\"./lv.js\": 521,\n\t\"./me\": 522,\n\t\"./me.js\": 522,\n\t\"./mk\": 523,\n\t\"./mk.js\": 523,\n\t\"./ml\": 524,\n\t\"./ml.js\": 524,\n\t\"./mr\": 525,\n\t\"./mr.js\": 525,\n\t\"./ms\": 527,\n\t\"./ms-my\": 526,\n\t\"./ms-my.js\": 526,\n\t\"./ms.js\": 527,\n\t\"./my\": 528,\n\t\"./my.js\": 528,\n\t\"./nb\": 529,\n\t\"./nb.js\": 529,\n\t\"./ne\": 530,\n\t\"./ne.js\": 530,\n\t\"./nl\": 531,\n\t\"./nl.js\": 531,\n\t\"./nn\": 532,\n\t\"./nn.js\": 532,\n\t\"./pl\": 533,\n\t\"./pl.js\": 533,\n\t\"./pt\": 535,\n\t\"./pt-br\": 534,\n\t\"./pt-br.js\": 534,\n\t\"./pt.js\": 535,\n\t\"./ro\": 536,\n\t\"./ro.js\": 536,\n\t\"./ru\": 537,\n\t\"./ru.js\": 537,\n\t\"./se\": 538,\n\t\"./se.js\": 538,\n\t\"./si\": 539,\n\t\"./si.js\": 539,\n\t\"./sk\": 540,\n\t\"./sk.js\": 540,\n\t\"./sl\": 541,\n\t\"./sl.js\": 541,\n\t\"./sq\": 542,\n\t\"./sq.js\": 542,\n\t\"./sr\": 544,\n\t\"./sr-cyrl\": 543,\n\t\"./sr-cyrl.js\": 543,\n\t\"./sr.js\": 544,\n\t\"./sv\": 545,\n\t\"./sv.js\": 545,\n\t\"./sw\": 546,\n\t\"./sw.js\": 546,\n\t\"./ta\": 547,\n\t\"./ta.js\": 547,\n\t\"./te\": 548,\n\t\"./te.js\": 548,\n\t\"./th\": 549,\n\t\"./th.js\": 549,\n\t\"./tl-ph\": 550,\n\t\"./tl-ph.js\": 550,\n\t\"./tlh\": 551,\n\t\"./tlh.js\": 551,\n\t\"./tr\": 552,\n\t\"./tr.js\": 552,\n\t\"./tzl\": 553,\n\t\"./tzl.js\": 553,\n\t\"./tzm\": 555,\n\t\"./tzm-latn\": 554,\n\t\"./tzm-latn.js\": 554,\n\t\"./tzm.js\": 555,\n\t\"./uk\": 556,\n\t\"./uk.js\": 556,\n\t\"./uz\": 557,\n\t\"./uz.js\": 557,\n\t\"./vi\": 558,\n\t\"./vi.js\": 558,\n\t\"./zh-cn\": 559,\n\t\"./zh-cn.js\": 559,\n\t\"./zh-tw\": 560,\n\t\"./zh-tw.js\": 560\n};\nfunction webpackContext(req) {\n\treturn __webpack_require__(webpackContextResolve(req));\n};\nfunction webpackContextResolve(req) {\n\tvar id = map[req];\n\tif(!(id + 1)) // check for number\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\treturn id;\n};\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 1002;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/moment/locale ^\\.\\/.*$\n// module id = 1002\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar></navbar>\\r\\n\\r\\n\\r\\n<div>\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-8\\\">\\r\\n            <br><br><br><br><br>\\r\\n            <div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <h3>Liste des actions</h3>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" *ngFor=\\\"let action of actionList\\\">\\r\\n\\r\\n\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        {{action.date | date:'yyyy-MM-dd HH:mm'}} : {{getInfoMode(action)}} {{getInfoTypePrefix(action)}} <b>{{getInfoType(action)}}</b>                        : <b>{{getInfoTypeNom(action)}}</b> par {{getInfoUtilisateur(action)}}\\r\\n                        <a *ngIf=\\\"getModeRedirectionDetail(action)=='MODIFICATION'\\\" (click)=\\\"goToDetail(action,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\" title=\\\"Modifier\\\"></i></a>\\r\\n                        <a *ngIf=\\\"getModeRedirectionDetail(action)=='CONSULTATION'\\\" (click)=\\\"goToDetail(action,'CONSULTATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-search-plus\\\" aria-hidden=\\\"true\\\" title=\\\"Consulter\\\"></i></a>\\r\\n\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <div (click)=\\\"voirPrecendent()\\\"  *ngIf=\\\"index>0\\\">Précédents</div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <div (click)=\\\"voirSuivant()\\\" *ngIf=\\\"actionList.length>=(maxAffichage)\\\">Suivants</div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-8\\\">\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n\\r\\n\\r\\n\\r\\n    </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/accueil.component.html\n// module id = 1049\n// module chunks = 1","module.exports = \"\\r\\n<div [hidden]=\\\"!siSubmit\\\">\\r\\n    <div class=\\\"row\\\" [hidden]=\\\"!siSubmitSuccess\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n            <div class=\\\" alert alert-success\\\">\\r\\n                Les données ont été enregistrées avec succès <i class=\\\"fa fa-check-square-o fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n        </div>\\r\\n    </div>\\r\\n    <div class=\\\"row\\\" [hidden]=\\\"!siAllValid\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n            <div class=\\\" alert alert-success\\\">\\r\\n                Vous venez de valider toutes les informations de la page. <i class=\\\"fa fa-check-square-o fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n        </div>\\r\\n    </div>\\r\\n    <div class=\\\"row\\\" [hidden]=\\\"siSubmitSuccess\\\">\\r\\n        <div class=\\\"col-lg-12 \\\">\\r\\n            <div class=\\\" alert alert-danger\\\">\\r\\n                Erreur lors de l'enregistrement des données <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n        </div>\\r\\n    </div>\\r\\n\\r\\n</div>\\r\\n<div class=\\\"row\\\" [hidden]=\\\"!(!siAllValid &&  siValidationMode2)\\\">\\r\\n    <div class=\\\"col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-danger\\\">\\r\\n            Attention! L'intégralité du contenu de cette page n'a pas été encore verrifié. Les données en rouge sont les données qui\\r\\n            n'ont pas encore été validées.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n<div class=\\\"row\\\" *ngIf=\\\"(siAllValid && !siSubmit)\\\">\\r\\n    <div class=\\\"col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-info\\\">\\r\\n            L'intégralité du contenu de cette page est validée.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n<div [hidden]=\\\"msgError==null || msgError.length==0\\\" class=\\\"row\\\">\\r\\n    <div class=\\\" col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-danger\\\">\\r\\n            {{msgError}} <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n<div class=\\\"row\\\" [hidden]=\\\"!siSubmitEnCours\\\">\\r\\n    <div class=\\\" col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-info\\\">\\r\\n            En cours d'enregistrement <i class=\\\"fa fa-hourglass-end  fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n<div class=\\\"row\\\" [hidden]=\\\"!siChargementDataEnCours\\\">\\r\\n    <div class=\\\" col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-info\\\">\\r\\n            Chargement des données en cours <i class=\\\"fa fa-hourglass-end  fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n<div class=\\\"row\\\" *ngIf=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n    <div class=\\\" col-lg-12\\\">\\r\\n        <div class=\\\" alert alert-info\\\">\\r\\n            Vous êtes actuellement connecté à l'application avec un compte temporaire, vous pouvez vous inscrire et avoir des droits avancés <a routerLink=\\\"/utilisateurMonCompte\\\" routerLinkActive=\\\"active\\\"><i class=\\\"fa fa-plus-square  fa-lg\\\" aria-hidden=\\\"true\\\"></i></a>\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/detail-message.component.html\n// module id = 1050\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'evenement'\\\"></navbar>\\r\\n<div>\\r\\n\\r\\n    <!--Fichier à terminer-->\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n            <div [hidden]=\\\"!(mode=='CREATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Création d'un événement</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!(mode=='MODIFICATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Modification d'un événement</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <!--\\r\\n            <div [hidden]=\\\"!siSubmit\\\">\\r\\n                <div class=\\\"row col-lg-12\\\" [hidden]=\\\"!siSubmitSuccess\\\" class=\\\"enregistrementOk\\\">\\r\\n                    Les données ont été enregistrées avec succès\\r\\n                </div>\\r\\n                <div class=\\\"row col-lg-12\\\" [hidden]=\\\"siSubmitSuccess\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Erreur lors de l'enregistrement des données\\r\\n                </div>\\r\\n            </div>-->\\r\\n\\r\\n            <br>\\r\\n            <br>\\r\\n            <form name=\\\"newEvenementForm\\\" (ngSubmit)=\\\"onSubmit()\\\" #evenementForm=\\\"ngForm\\\">\\r\\n                <!--\\r\\n                <div [hidden]=\\\"!siSubmit\\\">\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\" [hidden]=\\\"!siSubmitSuccess\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <div class=\\\" alert alert-success\\\">\\r\\n                                Les données ont été enregistrées avec succès <i class=\\\"fa fa-check-square-o fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\" [hidden]=\\\"siSubmitSuccess\\\">\\r\\n                        <div class=\\\"col-lg-12 \\\">\\r\\n                            <div class=\\\" alert alert-danger\\\">\\r\\n                                Erreur lors de l'enregistrement des données <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n                <div [hidden]=\\\"msgError==null || msgError.length==0\\\" class=\\\"row\\\">\\r\\n                    <div class=\\\" col-lg-12\\\">\\r\\n                        <div class=\\\" alert alert-danger\\\">\\r\\n                            {{msgError}} <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                -->\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12 marginCheckBoxValidation1\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siEvenementAllValide\\\" [(ngModel)]=\\\"detail.siEvenementAllValide\\\" name=\\\"siGroupeAllValid\\\"\\r\\n                                    (change)=\\\"changeValidAll()\\\">\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-11\\\">\\r\\n                        <label for=\\\"nom\\\" class=\\\"label1\\\">Tout valider</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"evenementDate\\\" class=\\\"label1\\\">Date de l'événement</label>-->\\r\\n                        <p-label valueLabel=\\\"Date de l'événement\\\" forLabel=\\\"evenementDate\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateValide\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                        <!--<my-date-picker name=\\\"evenementDate\\\" id=\\\"evenementDate\\\" [(ngModel)]=\\\"detail.evenementDate2\\\" (dateChanged)=\\\"onDateChanged($event,'EVENEMENT')\\\"\\r\\n                            [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                        <p-input type=\\\"date2\\\" id=\\\"dateEvenement\\\" [(value)]=\\\"detail.evenementDate\\\" [siInput]=\\\"getSiInputMode(detail.siDateValide)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateValide\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n                    <!--<div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                    </div>-->\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"evenementDate\\\" class=\\\"label1\\\">Date de l'événement</label>-->\\r\\n                        <p-label valueLabel=\\\"Date de fin de l'événement\\\" forLabel=\\\"evenementDatFine\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateFinValide\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateFinValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                        <!--<my-date-picker name=\\\"evenementDate\\\" id=\\\"evenementDate\\\" [(ngModel)]=\\\"detail.evenementDate2\\\" (dateChanged)=\\\"onDateChanged($event,'EVENEMENT')\\\"\\r\\n                            [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                        <p-input type=\\\"date2\\\" id=\\\"dateEvenementFin\\\" [(value)]=\\\"detail.evenementDateFin\\\" [siInput]=\\\"getSiInputMode(detail.siDateFinValide)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateFinValide\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n\\r\\n                    <!--<div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                    </div>-->\\r\\n                </div>\\r\\n                <div [hidden]=\\\"!(detail.evenementDate!=null && detail.evenementDateFin!=null && detail.evenementDate.length>0 && detail.evenementDateFin.length>0 && detail.evenementDate>detail.evenementDateFin)\\\"\\r\\n                        class=\\\"alert alert-danger\\\">\\r\\n                        La date de début doit être après la date de fin\\r\\n                    </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"nomEvenement\\\" class=\\\"label1\\\">Manifestation</label>-->\\r\\n                        <p-label valueLabel=\\\"Manifestation\\\" forLabel=\\\"nomEvenement\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siNomValide\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siNomValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"nomEvenement\\\" name=\\\"nomEvenement\\\" [(ngModel)]=\\\"detail.evenementNom\\\" class=\\\"form-control\\\" #nom=\\\"ngModel\\\"\\r\\n                            maxlength=\\\"50\\\" required (change)=\\\"checkUniciteNomEvenement()\\\">-->\\r\\n                        <p-input type=\\\"text\\\" id=\\\"nomEvenement\\\" [(value)]=\\\"detail.evenementNom\\\" [siInput]=\\\"getSiInputMode(detail.siNomValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNomValide\\\"\\r\\n                            (actionRetour)=\\\"checkUniciteNomEvenement()\\\" siRequired=\\\"true\\\"></p-input>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--<div class=\\\"row\\\" [hidden]=\\\"nom.valid || nom.pristine\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Le nom du l'événement est obligatoire.\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>-->\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div [hidden]=\\\"siNomUnique\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le nom de cet événement existe déjà.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"lieuEvenement\\\" class=\\\"label1\\\">Lieu</label>-->\\r\\n                        <p-label valueLabel=\\\"Ville\\\" forLabel=\\\"lieuEvenement\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siLieuIdValide\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siLieuIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"lieuEvenement\\\" name=\\\"lieuEvenement\\\" [(ngModel)]=\\\"detail.evenementLieuLibelle\\\" class=\\\"form-control\\\"\\r\\n                            #evenementLieuLibelle=\\\"ngModel\\\" list=\\\"lieuListId\\\" (change)=\\\"changeEvenementLieu()\\\">\\r\\n                        <datalist id=\\\"lieuListId\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"evenementLieuId\\\" [(ngModel)]=\\\"detail.evenementLieuLibelle\\\" name=\\\"evenementLieutId\\\" #lieuEvenement=\\\"ngModel\\\">\\r\\n                        <option [value]=\\\"\\\"></option>\\r\\n                        <option  *ngFor=\\\"let l of lieuList\\\" [value]=\\\"l.lieuLibelle\\\">\\r\\n                            </select>\\r\\n                        </datalist>-->\\r\\n                        <!--<p-auto-complete [(value)]=\\\"detail.evenementLieuLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuIdValide\\\"\\r\\n                            [(valueId)]=\\\"detail.evenementLieuId\\\" [siInput]=\\\"getSiInputMode(detail.siLieuIdValide)\\\" id=\\\"lieuEvenement\\\"\\r\\n                            typeObject=\\\"LIEU\\\" (actionRetourSiInconnu)=\\\"lieuEvenementInconnu=$event\\\">\\r\\n                        </p-auto-complete>-->\\r\\n                        <p-auto-complete-lieu-api [(value)]=\\\"detail.evenementLieuLibelle\\\" [(valueId)]=\\\"detail.evenementLieuId\\\" [(codeInsee)]=\\\"detail.lieuCodeInsee\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siLieuIdValide)\\\"\\r\\n                            id=\\\"lieuEvenement\\\"></p-auto-complete-lieu-api>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-3  marginCheckBoxValidation1\\\"></div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-label valueLabel=\\\"Code INSEE de la ville\\\" forLabel=\\\"lieuCodeInsee\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"number\\\" id=\\\"lieuCodeInsee\\\" [(value)]=\\\"detail.lieuCodeInsee\\\" [siInput]=\\\"getSiInputMode(detail.siLieuIdValide)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuIdValide\\\" (actionRetour2)=\\\"detail.evenementLieuId=null\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <!--<p-create-lieu-simple [(value)]=\\\"detail.evenementLieuLibelle\\\" [siAffiche]=\\\"lieuEvenementInconnu\\\" id=\\\"lieuEvenementCreateSimple\\\"\\r\\n                    (actionRetour)=\\\"detail.evenementLieuId=$event;lieuEvenementInconnu=false\\\">\\r\\n                </p-create-lieu-simple>\\r\\n            -->\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"subdivision\\\" class=\\\"label1\\\">Subdivision</label>-->\\r\\n                        <p-label valueLabel=\\\"Lieu\\\" forLabel=\\\"subdivision\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siSubdivisionIdValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siSubdivisionIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"subdivision\\\" name=\\\"subdivision\\\" [(ngModel)]=\\\"detail.adresse\\\" class=\\\"form-control\\\" #adresse=\\\"ngModel\\\"\\r\\n                            list=\\\"subdivisionListId\\\" (change)=\\\"changeSubdivision()\\\">\\r\\n                        <datalist id=\\\"subdivisionListId\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"subdivisionId\\\" [(ngModel)]=\\\"detail.adresse\\\" name=\\\"subdivisionId\\\" #subdivision=\\\"ngModel\\\">\\r\\n                        <option [value]=\\\"\\\"></option>\\r\\n                        <option  *ngFor=\\\"let sub of subdivisionList\\\" [value]=\\\"sub.libelle\\\">\\r\\n                            </select>\\r\\n                        </datalist>-->\\r\\n                        <p-auto-complete [(value)]=\\\"detail.adresse\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeEvenementIdValide\\\"\\r\\n                            [(valueId)]=\\\"detail.subdivisionId\\\" [siInput]=\\\"getSiInputMode(detail.siSubdivisionIdValide)\\\" id=\\\"subdivision\\\"\\r\\n                            typeObject=\\\"SUBDIVISION\\\" (actionRetourSiInconnu)=\\\"sSubdivisionInconu=$event\\\">\\r\\n                        </p-auto-complete>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <p-create-subdivision-simple [(value)]=\\\"detail.adresse\\\" [siAffiche]=\\\"sSubdivisionInconu\\\" id=\\\"subdivisionCreate\\\" (actionRetour)=\\\"detail.subdivisionId=$event;sSubdivisionInconu=false\\\">\\r\\n                </p-create-subdivision-simple>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Adresse\\\" forLabel=\\\"adresse2\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siAdresseIdValide\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siAdresseIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"text\\\" id=\\\"adresse2\\\" [(value)]=\\\"detail.adresse2\\\" [siInput]=\\\"getSiInputMode(detail.siAdresseIdValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siAdresseIdValide\\\"></p-input>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <!--<label for=\\\"typeEvenement\\\" class=\\\"label1\\\">Nature de l'événement</label>-->\\r\\n                        <p-label valueLabel=\\\"Nature de l'événement\\\" forLabel=\\\"typeEvenement\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTypeEvenementIdValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siTypeEvenementIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"typeEvenement\\\" name=\\\"typeEvenement\\\" [(ngModel)]=\\\"detail.evenementTypeLibelle\\\" class=\\\"form-control\\\"\\r\\n                            #evenementTypeLibelle=\\\"ngModel\\\" list=\\\"typeEvenementListId\\\" (change)=\\\"changeEvenementType()\\\">\\r\\n                        <datalist id=\\\"typeEvenementListId\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"evenementTypeId\\\" [(ngModel)]=\\\"detail.evenementTypeLibelle\\\" name=\\\"evenementTypeId\\\" #typeEvenement=\\\"ngModel\\\">\\r\\n                        <option [value]=\\\"\\\"></option>\\r\\n                        <option  *ngFor=\\\"let evenement of typeEvenementList\\\" [value]=\\\"evenement.libelle\\\">\\r\\n                            </select>\\r\\n                        </datalist>-->\\r\\n                        <p-auto-complete id=\\\"typeEvenement\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeEvenementIdValide\\\" [(value)]=\\\"detail.evenementTypeLibelle\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siTypeEvenementIdValide)\\\" [(valueId)]=\\\"detail.evenementTypeId\\\" typeObject=\\\"TYPE_EVENEMENT\\\" (actionRetourSiInconnu)=\\\"detail.siTypeEvenementIconnu=$event\\\" >\\r\\n                        </p-auto-complete>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <p-create-type-evenement-simple [(value)]=\\\"detail.evenementTypeLibelle\\\" [siAffiche]=\\\"detail.siTypeEvenementIconnu\\\" id=\\\"typeEvenementtCreategroupe\\\"\\r\\n                (actionRetour)=\\\"detail.evenementTypeId=$event;detail.siTypeEvenementIconnu=false\\\">\\r\\n            </p-create-type-evenement-simple>\\r\\n\\r\\n                <!-- TODO create simple -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Groupe(s) [relations]\\\" siAllLigne=\\\"true\\\" forLabel=\\\"groupeRelation\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siGroupeAllValide\\\" [(valueCheckBox)]=\\\"detail.siGroupeAllValide\\\" (actionRetour)=\\\"changeGroupeRelationAllValid()\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div *ngFor=\\\"let g of detail.groupeListEvenement\\\">\\r\\n                    <div class=\\\"row\\\" [hidden]=\\\"g.siDelete\\\" (change)=\\\"g.siChange=true\\\">\\r\\n                        <div class=\\\"col-lg-5\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7\\\">\\r\\n                            <div class=\\\"row\\\" [hidden]=\\\"g.siDelete\\\" (change)=\\\"g.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"grouepEvenementSiValide{{g.evenementArtisteGroupeId}}\\\" name=\\\"groupeEvenementSiValide{{g.evenementArtisteGroupeId}}\\\"\\r\\n                                        [(ngModel)]=\\\"g.siValide\\\" (change)=\\\"changeGroupeRelationUnitValid()\\\">\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <p-auto-complete id=\\\"groupeNom{{g.evenementArtisteGroupeId}}\\\" [(value)]=\\\"g.groupeLibelle\\\" [(valueId)]=\\\"g.groupeId\\\" (actionRetour)=\\\"g.siChange=true;\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(g.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!g.siValide\\\"\\r\\n                                        (actionRetourSiInconnu)=\\\"g.siGroupeEvenementInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\">\\r\\n                                    </p-auto-complete>\\r\\n\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                    <p-auto-complete id=\\\"groupeNom{{g.evenementArtisteGroupeId}}\\\" [(value)]=\\\"g.groupeLibelle\\\" [(valueId)]=\\\"g.groupeId\\\" (actionRetour)=\\\"g.siChange=true;\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(g.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!g.siValide\\\"\\r\\n                                        (actionRetourSiInconnu)=\\\"g.siGroupeEvenementInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\">\\r\\n                                    </p-auto-complete>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-2\\\">\\r\\n                                    <i *ngIf=\\\"getSiInputMode(g.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"g.siDelete=true;siSubmit=false\\\"></i>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                            <!--\\r\\n                                <div [hidden]=\\\"!artisteEvenement.siArtisteEvenementInconnu || artisteEvenement.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                                    Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                                    <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                                </div>-->\\r\\n\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <p-create-groupe-simple [(value)]=\\\"g.groupeLibelle\\\" [siAffiche]=\\\"g.siGroupeEvenementInconnu && !g.siDelete\\\" id=\\\"groupeEvenementCreategroupe{{g.evenementArtisteGroupeId}}\\\"\\r\\n                        (actionRetour)=\\\"g.groupeId=$event;g.siGroupeEvenementInconnu=false\\\">\\r\\n                    </p-create-groupe-simple>\\r\\n\\r\\n\\r\\n                </div>\\r\\n                <i *ngIf=\\\"getSiInputMode(detail.siGroupeAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addGroupeEvenement();siSubmit=false\\\"\\r\\n                    title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n                <!--\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label for=\\\"personSurname\\\" class=\\\"label1\\\">Groupe(s) [relations]</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div>\\r\\n                    <div *ngFor=\\\"let groupeEvenement of detail.groupeListEvenement\\\">\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"groupeEvenement.siDelete\\\" (change)=\\\"groupeEvenement.siChange=true\\\">\\r\\n                            <div class=\\\"col-lg-6\\\">\\r\\n                                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"groupeEvenement{{groupeEvenement.evenementArtisteGroupeId}}{{groupeEvenement.groupeLibelle}}\\\"\\r\\n                                    [(ngModel)]=\\\"groupeEvenement.groupeLibelle\\\" name=\\\"groupeEvenement{{groupeEvenement.evenementArtisteGroupeId}}{{groupeEvenement.groupeLibelle}}\\\"\\r\\n                                    #groupeNom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'groupeNom'+groupeEvenement.evenementArtisteGroupeId+'List'\\\"\\r\\n                                    (keyup)=\\\"changeGroupeEvenementList(groupeEvenement)\\\" (change)=\\\"changeGroupeEvenement(groupeEvenement)\\\">\\r\\n                                <datalist id=\\\"groupeNom{{groupeEvenement.evenementArtisteGroupeId}}List\\\">\\r\\n                                    <select class=\\\"form-control\\\" id=\\\"groupeNomSelect{{groupeEvenement.evenementArtisteGroupeId}}\\\" [(ngModel)]=\\\"groupeEvenement.groupeLibelle\\\"\\r\\n                                        name=\\\"groupeNomSelect{{groupeEvenement.evenementArtisteGroupeId}}\\\" #groupeListSelect=\\\"ngModel\\\">\\r\\n                            <option [value]=\\\"\\\"></option>\\r\\n                            <option  *ngFor=\\\"let groupe of groupeEvenement.groupeList\\\" [value]=\\\"groupe.libelle\\\">\\r\\n                                    </select>\\r\\n                                </datalist>\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"groupeEvenement.siDelete=true\\\"></i>\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"!groupeEvenement.siGroupeEvenementInconnu || groupeEvenement.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addGroupeEvenement()\\\" title=\\\"Ajouter\\\"> </i>\\r\\n                </div>\\r\\n                -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n                <!--\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label for=\\\"personSurname\\\" class=\\\"label1\\\">Auteur(s) [relations]</label>\\r\\n                    </div>\\r\\n                </div>-->\\r\\n                <p-label valueLabel=\\\"Auteur(s) [relations]\\\" siAllLigne=\\\"true\\\" forLabel=\\\"auteurRelation\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siArtisteAllValide\\\" [(valueCheckBox)]=\\\"detail.siArtisteAllValide\\\" (actionRetour)=\\\"changeAuteurRelationAllValid()\\\">\\r\\n                </p-label>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n                <div *ngFor=\\\"let artisteEvenement of detail.artisteListEvenement\\\">\\r\\n                    <div class=\\\"row\\\" [hidden]=\\\"artisteEvenement.siDelete\\\" (change)=\\\"artisteEvenement.siChange=true\\\">\\r\\n                        <div class=\\\"col-lg-5\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7\\\">\\r\\n                            <div class=\\\"row\\\" [hidden]=\\\"artisteEvenement.siDelete\\\" (change)=\\\"artisteEvenement.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"artisteEvenementSiValide{{artisteEvenement.evenementArtisteGroupeId}}\\\" name=\\\"artisteEvenementSiValide{{artisteEvenement.evenementArtisteGroupeId}}\\\"\\r\\n                                        [(ngModel)]=\\\"artisteEvenement.siValide\\\" (change)=\\\"changeAuteurRelationUnitValid()\\\">\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <p-auto-complete id=\\\"auteurNom{{artisteEvenement.evenementArtisteGroupeId}}\\\" [(value)]=\\\"artisteEvenement.personneLibelle\\\"\\r\\n                                        [(valueId)]=\\\"artisteEvenement.personneId\\\" (actionRetour)=\\\"artisteEvenement.siChange=true;\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(artisteEvenement.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!artisteEvenement.siValide\\\"\\r\\n                                        (actionRetourSiInconnu)=\\\"artisteEvenement.siArtisteEvenementInconnu=$event\\\" typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                                    </p-auto-complete>\\r\\n\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                    <p-auto-complete id=\\\"auteurNom{{artisteEvenement.evenementArtisteGroupeId}}\\\" [(value)]=\\\"artisteEvenement.personneLibelle\\\"\\r\\n                                        [(valueId)]=\\\"artisteEvenement.personneId\\\" (actionRetour)=\\\"artisteEvenement.siChange=true;\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(artisteEvenement.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!artisteEvenement.siValide\\\"\\r\\n                                        (actionRetourSiInconnu)=\\\"artisteEvenement.siArtisteEvenementInconnu=$event\\\" typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                                    </p-auto-complete>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-2\\\">\\r\\n                                    <i *ngIf=\\\"getSiInputMode(artisteEvenement.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"\\r\\n                                        (click)=\\\"artisteEvenement.siDelete=true;siSubmit=false\\\"></i>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                            <!--\\r\\n                                <div [hidden]=\\\"!artisteEvenement.siArtisteEvenementInconnu || artisteEvenement.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                                    Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                                    <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                                </div>-->\\r\\n\\r\\n                        </div>\\r\\n\\r\\n\\r\\n                        <!--<input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"artisteEvenement{{artisteEvenement.evenementArtisteGroupeId}}{{artisteEvenement.personneLibelle}}\\\"\\r\\n                                [(ngModel)]=\\\"artisteEvenement.personneLibelle\\\" name=\\\"artisteEvenement{{artisteEvenement.evenementArtisteGroupeId}}{{artisteEvenement.personneLibelle}}\\\"\\r\\n                                #artisteNom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'artisteNom'+artisteEvenement.evenementArtisteGroupeId+'List'\\\"\\r\\n                                (keyup)=\\\"changeArtisteEvenementList(artisteEvenement)\\\" (change)=\\\"changeArtisteEvenement(artisteEvenement)\\\">\\r\\n                            <datalist id=\\\"artisteNom{{artisteEvenement.evenementArtisteGroupeId}}List\\\">\\r\\n                                <select class=\\\"form-control\\\" id=\\\"artisteNomSelect{{artisteEvenement.evenementArtisteGroupeId}}\\\" [(ngModel)]=\\\"artisteEvenement.personneLibelle\\\"\\r\\n                                    name=\\\"artisteNomSelect{{artisteEvenement.evenementArtisteGroupeId}}\\\" #personneListSelect=\\\"ngModel\\\">\\r\\n                            <option [value]=\\\"\\\"></option>\\r\\n                            <option  *ngFor=\\\"let artiste of artisteEvenement.personneList\\\" [value]=\\\"artiste.libelle\\\">\\r\\n                                    </select>\\r\\n                            </datalist>-->\\r\\n                    </div>\\r\\n\\r\\n                    <p-create-personne-simple [(value)]=\\\"artisteEvenement.personneLibelle\\\" [siAffiche]=\\\"artisteEvenement.siArtisteEvenementInconnu && !artisteEvenement.siDelete\\\"\\r\\n                        id=\\\"artisteEvenementCreatePersonne{{artisteEvenement.evenementArtisteGroupeId}}\\\" (actionRetour)=\\\"artisteEvenement.personneId=$event;artisteEvenement.siArtisteEvenementInconnu=false\\\">\\r\\n                    </p-create-personne-simple>\\r\\n\\r\\n\\r\\n                </div>\\r\\n                <!--\\r\\n                    <div [hidden]=\\\"!artisteEvenement.siArtisteEvenementInconnu || artisteEvenement.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                        Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                        <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                    </div>-->\\r\\n                <i *ngIf=\\\"getSiInputMode(detail.siArtisteAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addArtisteEvenement();siSubmit=false\\\"\\r\\n                    title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <!--<label for=\\\"descEvenement\\\" class=\\\"label1\\\">Description</label>-->\\r\\n                        <p-label valueLabel=\\\"Description\\\" siAllLigne=\\\"true\\\" forLabel=\\\"description\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDescriptionValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDescriptionValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <!--<textarea class=\\\"form-control\\\" id=\\\"description\\\" [(ngModel)]=\\\"detail.evenementDesc\\\" name=\\\"description\\\" maxlength=\\\"500\\\" #description=\\\"ngModel\\\"\\r\\n                            rows=\\\"5\\\"></textarea>-->\\r\\n                        <p-input type=\\\"textarea\\\" id=\\\"description\\\" [(value)]=\\\"detail.evenementDesc\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDescriptionValide\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siDescriptionValide)\\\"></p-input>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--<div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label for=\\\"personFirstname\\\" class=\\\"label1\\\">Fichier(s) présent(s)</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" *ngFor=\\\"let f of detail.fileList\\\">\\r\\n                    <div class=\\\"col-lg-8\\\" (change)=\\\"f.siChange=true\\\" [hidden]=\\\"f.siDelete || f.nom==null || f.nom.length==0\\\">\\r\\n                        <a (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-4\\\" (change)=\\\"f.siChange=true\\\" [hidden]=\\\"f.siDelete || f.nom==null || f.nom.length==0\\\">\\r\\n                        <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"f.siDelete=true\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label for=\\\"personFirstname\\\" class=\\\"label1\\\" style=\\\"margin-bottom:10px\\\"><b>Ajouter des fichiers à la notice</b></label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label class=\\\"label1 label2\\\">Fichiers autorisés : {{getFileExtensionAutorise()}}</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label class=\\\"label1 label2\\\">Taille max : {{getSizeMaxFileImport()}}</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" *ngFor=\\\"let fileNouveau of fileNouveauList\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"fileNouveau.siDelete\\\">\\r\\n                            <div class=\\\"col-lg-8\\\">\\r\\n                                <input type=\\\"file\\\" class=\\\"form-control\\\" (change)=\\\"addNewFile($event,fileNouveau)\\\" id=\\\"fileNouveau{{fileNouveau.id}}\\\" name=\\\"fileNouveau{{fileNouveau.id}}\\\"\\r\\n                                    placeholder=\\\"Upload file...\\\" />\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"fileNouveau.siDelete=true\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row alert alert-danger\\\" [hidden]=\\\"fileNouveau.siDelete || !fileNouveau.siError\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                {{fileNouveau.msg}}\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addFile()\\\" title=\\\"Ajouter\\\"></i>\\r\\n                    </div>\\r\\n                </div>-->\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION' || mode=='MODIFICATION'\\\">\\r\\n                    <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!evenementForm.form.valid || !validationFormulaire()\\\">Sauvegarder</button>\\r\\n                </div>\\r\\n            </form>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n\\r\\n            <p-file [detail]=\\\"detail\\\" [siChangeFileValidAll]=\\\"siRecalculeFileChange\\\" [siValidationMode]=\\\"siValidationPageMode\\\" [siSubmitOk]=\\\"siSubmit&&siSubmitSuccess\\\"\\r\\n                (addFileRetour)=\\\"fileNouveauList.push($event)\\\" (onChangeValidation)=\\\"changeAllUnitValid()\\\" [siInputMode]=\\\"getSiInputMode(detail.siFilePresentAllValid)\\\"></p-file>\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <h3>\\r\\n                <strong>Aperçu</strong>\\r\\n            </h3>\\r\\n            <br>\\r\\n            <br>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"apercuBlock\\\">\\r\\n                    <br>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>\\r\\n                                <u>{{detail.evenementNom}}</u>\\r\\n                            </b>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Description</b>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <span>{{detail.evenementDesc}}</span>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <!--<div class=\\\"row\\\" *ngIf=\\\"detail.evenementDate!=null && detail.evenementDate.length>0\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <b>Date : </b>{{detail.evenementDate}}<br>\\r\\n                    </div>\\r\\n        </div>-->\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Date : </b><span>{{detail.evenementDate| format :'date2' }}<span *ngIf=\\\"detail.evenementDate!=null && detail.evenementDateFin!=null\\\"> au </span>{{detail.evenementDateFin| format :'date2'}}</span>\\r\\n                            </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Ville : </b><span>{{detail.evenementLieuLibelle}}</span><span *ngIf=\\\"detail.lieuCodeInsee!=null&&detail.lieuCodeInsee>0\\\"> ({{detail.lieuCodeInsee}})</span>\\r\\n                            </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Lieu : </b><span>{{detail.adresse}}</span>\\r\\n                            </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Nature de l'événement : </b><span>{{detail.evenementTypeLibelle}}</span>\\r\\n                            </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <strong>Groupe(s)</strong>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <ul *ngFor=\\\"let groupe of detail.groupeListEvenement\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n\\r\\n                            <li *ngIf=\\\"!groupe.siDelete&&groupe.groupeId!=null&&groupe.groupeId>0\\\">\\r\\n                                <a routerLink=\\\"/groupeDetail/{{groupe.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{groupe.groupeLibelle}}</a>\\r\\n                            </li>\\r\\n                        </div>\\r\\n                        </div>\\r\\n                    </ul>\\r\\n                    <br>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <strong>Personne(s)</strong>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <ul *ngFor=\\\"let auteur of detail.artisteListEvenement\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <li *ngIf=\\\"!auteur.siDelete&&auteur.personneId!=null&&auteur.personneId>0\\\">\\r\\n                                <a routerLink=\\\"/personneDetail/{{auteur.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{auteur.personneLibelle}}</a>\\r\\n                            </li>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </ul>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n\\r\\n                                    <b>Fichiers joints</b>\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <ul *ngFor=\\\"let f of detail.fileList\\\">\\r\\n                                <div class=\\\"row\\\" >\\r\\n                                    <div class=\\\"col-lg-12\\\" *ngIf=\\\"!f.siDelete\\\" >\\r\\n                                        <li><a routerLinkActive=\\\"active\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a></li>\\r\\n                                    </div>\\r\\n                                </div>\\r\\n                            </ul>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <p-detail-info-utilisateur [createur]=\\\"detail.createur\\\" [modificateurList]=\\\"detail.modificateurList\\\" [siPersonneInterne]=\\\"user.profil == 'SUPER_ADMINISTRATEUR' || user.profil == 'CHERCHEUR'\\\"></p-detail-info-utilisateur>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <br>\\r\\n                </div>\\r\\n            </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n    </div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/evenement-detail.html\n// module id = 1051\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'evenement'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-8\\\">\\r\\n            <br><br>\\r\\n            <a routerLink=\\\"/evenementDetail/0/CREATION\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button \\\" class=\\\"btn  pull-right button-creer\\\"  >Créer un nouvel événement </button></a>\\r\\n            <br><br>\\r\\n\\r\\n            <h3><strong>Modifier un événement déjà existant : </strong></h3>\\r\\n            <form (ngSubmit)=\\\"onSubmit()\\\" #evenementList=\\\"ngForm\\\" class=\\\"searchCritere\\\">\\r\\n\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Chercher par:</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Titre</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"evenementNom\\\" [(ngModel)]=\\\"search.evenementNom\\\" name=\\\"evenementNom\\\" #evenementNom=\\\"ngModel\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Nature</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <select class=\\\"form-control\\\" id=\\\"typeEvenement\\\" [(ngModel)]=\\\"search.typeEvenement\\\" name=\\\"typeEvenement\\\" #typeEvenement=\\\"ngModel\\\">\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let evenement of typeEvenementList\\\" [value]=\\\"evenement.id\\\">{{evenement.libelle}}</option>\\r\\n                </select>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Artiste</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <select class=\\\"form-control\\\" id=\\\"personne\\\" [(ngModel)]=\\\"search.personneId\\\" name=\\\"personne\\\" #personne=\\\"ngModel\\\">\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let p of personneList\\\" [value]=\\\"p.id\\\">{{p.libelle}}</option>\\r\\n                </select>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Lieu</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"evenementLieu\\\" [(ngModel)]=\\\"search.evenementLieuLibelle\\\" name=\\\"lieu\\\" #lieu=\\\"ngModel\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Groupe</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-4\\\">\\r\\n                        <select class=\\\"form-control\\\" id=\\\"groupe\\\" [(ngModel)]=\\\"search.groupeId\\\" name=\\\"groupe\\\" #groupe=\\\"ngModel\\\">\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let g of groupeList\\\" [value]=\\\"g.id\\\">{{g.libelle}}</option>\\r\\n                </select>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Date entre</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <p-input type=\\\"date\\\" id=\\\"dateDebut\\\" [(value)]=\\\"search.dateEvenementIn\\\"></p-input>\\r\\n                        <!--<my-date-picker name=\\\"dateEvenementIn\\\" id=\\\"dateEvenementIn\\\" (dateChanged)=\\\"onDateChanged($event,'IN')\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">et</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <p-input type=\\\"date\\\" id=\\\"dateDebut\\\" [(value)]=\\\"search.dateEvenementOut\\\"></p-input>\\r\\n                        <!--<my-date-picker name=\\\"dateEvenementOut\\\" id=\\\"dateEvenementOut\\\" (dateChanged)=\\\"onDateChanged($event,'OUT')\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-8\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <button type=\\\"button\\\" class=\\\"btn button-reset\\\" (click)=\\\"reset()\\\">Reset</button>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <button type=\\\"submit\\\" class=\\\"btn button-search\\\" [disabled]=\\\"!evenementList.form.valid\\\">Rechercher</button>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <br>\\r\\n            </form>\\r\\n\\r\\n            <br><br>\\r\\n\\r\\n            <div [hidden]=\\\"!aucunResultat\\\"><strong>Aucun résultat ne correspond à votre recherche</strong></div>\\r\\n            <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n                <thead>\\r\\n                    <tr>\\r\\n                        <th width=\\\"20%\\\" [class]=\\\"selectedClass('evenementNom')\\\" (click)=\\\"changeSorting('evenementNom')\\\">Titre</th>\\r\\n                        <th width=\\\"15%\\\" [class]=\\\"selectedClass('evenementLieuLibelle')\\\" (click)=\\\"changeSorting('evenementLieuLibelle')\\\">Lieu</th>\\r\\n                        <th width=\\\"15%\\\" [class]=\\\"selectedClass('evenementTypeLibelle')\\\" (click)=\\\"changeSorting('evenementTypeLibelle')\\\">Nature</th>\\r\\n                        <th width=\\\"15%\\\" [class]=\\\"selectedClass('dateEvenement')\\\" (click)=\\\"changeSorting('dateEvenement')\\\">Date</th>\\r\\n                        <th width=\\\"15%\\\" [class]=\\\"selectedClass('groupeNom')\\\" (click)=\\\"changeSorting('groupeNom')\\\">Groupe</th>\\r\\n                        <th width=\\\"15%\\\" [class]=\\\"selectedClass('personneNom')\\\" (click)=\\\"changeSorting('personneNom')\\\">Artiste</th>\\r\\n                        <th width=\\\"15%\\\">Editer</th>\\r\\n                        <th width=\\\"5%\\\" *ngIf=\\\"getSiAdministrateur()\\\">Supprimer</th>\\r\\n                    </tr>\\r\\n                </thead>\\r\\n                <tbody>\\r\\n                    <tr *ngFor=\\\"let evenement of rows | orderBy : convertSorting()\\\" [hidden]=\\\"!(evenement.siFirstLigne || evenement.siVisible)\\\"\\r\\n                        class=\\\"tableRow{{evenement.numeroStyle}}\\\">\\r\\n                        <td>\\r\\n                            <h4 *ngIf=\\\"(evenement.siFirstLigne) || !evenement.siFirstLigne && siTriEnCour\\\">\\r\\n                                <i *ngIf=\\\"!evenement.siSousLigneAffiche && evenement.nbrMemePersonne>1\\\" class=\\\"fa fa-caret-square-o-right\\\" aria-hidden=\\\"true\\\"\\r\\n                                    (click)=\\\"onChangeVisibiliteSousLigne(evenement.evenementId,true)\\\" title=\\\"Afficher les autres informations de cet événement\\\"></i>\\r\\n                                <i *ngIf=\\\"evenement.siSousLigneAffiche && evenement.nbrMemePersonne>1\\\" class=\\\"fa fa-caret-square-o-down\\\" aria-hidden=\\\"true\\\"\\r\\n                                    (click)=\\\"onChangeVisibiliteSousLigne(evenement.evenementId,false)\\\" title=\\\"Cacher les autres informations de cet événement\\\"></i>                                {{evenement.evenementNom}}\\r\\n                            </h4>\\r\\n                        </td>\\r\\n                        <td>\\r\\n                            <h4>{{evenement.evenementLieuLibelle}}</h4>\\r\\n                        </td>\\r\\n                        <td>\\r\\n                            <h4>{{evenement.evenementTypeLibelle}}</h4>\\r\\n                        </td>\\r\\n                        <td>\\r\\n                            <h4>{{evenement.dateEvenement | date: 'dd-MM-yyyy' }}</h4>\\r\\n                        </td>\\r\\n                        <td>\\r\\n                            <h4>{{evenement.groupeNom}}</h4>\\r\\n                        </td>\\r\\n                        <td>\\r\\n                            <h4>{{evenement.personneNom}}</h4>\\r\\n                        </td>\\r\\n                        <!--<td><h4><a routerLink=\\\"/evenementDetail/{{evenement.evenementId}}/MODIFICATION\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\"></i> </a></h4></td>\\r\\n                        <td *ngIf=\\\"getModeRedirectionDetail(evenement)=='MODIFICATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetail(evenement,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\"></i></a></h4>\\r\\n                        </td>-->\\r\\n                        <td *ngIf=\\\"getModeRedirectionDetail(evenement)=='MODIFICATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetail(evenement,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\" title=\\\"Modifier\\\"></i></a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"getModeRedirectionDetail(evenement)=='CONSULTATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetail(evenement,'CONSULTATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-search-plus\\\" aria-hidden=\\\"true\\\"  title=\\\"Consulter\\\"></i></a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"getSiAdministrateur()\\\">\\r\\n                            <h4>\\r\\n                                <i (click)=\\\"toDelete(evenement);\\\" class=\\\"fa fa-times-circle\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"></i></h4>\\r\\n                        </td>\\r\\n                    </tr>\\r\\n                </tbody>\\r\\n            </table>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n    </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/evenementList.html\n// module id = 1052\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'groupe'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-1\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n            <div [hidden]=\\\"!(mode=='CREATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Création d'un groupe</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!(mode=='MODIFICATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Modification d'un groupe</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!(mode=='CONSULTATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Consultation d'un groupe</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n\\r\\n\\r\\n            <br>\\r\\n            <br>\\r\\n            <form name=\\\"newPersonForm\\\" (ngSubmit)=\\\"onSubmit()\\\" #groupeForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12 marginCheckBoxValidation1\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siGroupeAllValid\\\" [(ngModel)]=\\\"detail.siGroupeAllValid\\\" name=\\\"siGroupeAllValid\\\"\\r\\n                                    #siGroupeAllValid=\\\"ngModel\\\" (change)=\\\"changeValidAll()\\\">\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-11\\\">\\r\\n                        <label for=\\\"nom\\\" class=\\\"label1\\\">Tout valider</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Nom du groupe\\\" forLabel=\\\"nom\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siNomValid\\\" [(valueCheckBox)]=\\\"detail.siNomValid\\\"\\r\\n                            (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n                        <p-input type=\\\"text\\\" id=\\\"nom\\\" [(value)]=\\\"detail.nom\\\" [siInput]=\\\"getSiInputMode(detail.siNomValid)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNomValid\\\"\\r\\n                            (actionRetour)=\\\"checkUniciteNomGroupe()\\\" siRequired=\\\"true\\\"></p-input>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"groupeNomSimilaireIdList != null && groupeNomSimilaireIdList.length >0\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Le nom de ce groupe existe déjà\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                            <br>Vous pouvez accéder à la fichie existante en cliquant içi\\r\\n                            <a routerLink=\\\"/groupeDetail/{{groupeNomSimilaireIdList[0].id}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">\\r\\n                                <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder au groupe avec le même nom\\\"></i>\\r\\n                            </a>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div hidden>\\r\\n                    <input type=\\\"text\\\" id=\\\"nom2\\\" name=\\\"nom2\\\" [(ngModel)]=\\\"detail.nom\\\" class=\\\"form-control\\\" #nom=\\\"ngModel\\\" required>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"(nom.valid || nom.pristine)\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Le nom du groupe est obligatoire\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <!--\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Genre du groupe\\\" forLabel=\\\"genre\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siGenreIdValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siGenreIdValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-auto-complete id=\\\"genre\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siGenreIdValid\\\" [(value)]=\\\"detail.genreLibelle\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siGenreIdValid)\\\" [(valueId)]=\\\"detail.genreId\\\" typeObject=\\\"TYPE_GENRE\\\"\\r\\n                            (actionRetourSiInconnu)=\\\"siGenreInconu=$event\\\">\\r\\n                        </p-auto-complete>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <p-create-genre-simple [(value)]=\\\"detail.genreLibelle\\\" [siAffiche]=\\\"siGenreInconu\\\" id=\\\"genreCreate\\\" (actionRetour)=\\\"detail.genreId=$event;siGenreInconu=false\\\">\\r\\n                </p-create-genre-simple>\\r\\n            -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Genre\\\" forLabel=\\\"genre\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siGenreAllValid\\\" [(valueCheckBox)]=\\\"detail.siGenreAllValid\\\"\\r\\n                            (actionRetour)=\\\"changeGenreAllValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <div *ngFor=\\\"let genre of detail.genreList\\\">\\r\\n                            <div class=\\\"row\\\" [hidden]=\\\"genre.siDelete\\\" (change)=\\\"genre.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siGenreValide{{genre.groupeGenreId}}\\\" [(ngModel)]=\\\"genre.siValide\\\" name=\\\"siGenreValide{{genre.groupeGenreId}}\\\"\\r\\n                                        (change)=\\\"changeGenreUnitValid()\\\">\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <p-auto-complete [(value)]=\\\"genre.genreLibelle\\\" [(valueId)]=\\\"genre.typeGenreId\\\" id=\\\"genreUnit{{genre.groupeGenreId}}\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!genre.siValide\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(genre.siValide)\\\" typeObject=\\\"TYPE_GENRE\\\" (actionRetourSiInconnu)=\\\"genre.siGenreInconnu=$event\\\">\\r\\n                                    </p-auto-complete>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                    <p-auto-complete [(value)]=\\\"genre.genreLibelle\\\" [(valueId)]=\\\"genre.typeGenreId\\\" id=\\\"genreUnit{{genre.groupeGenreId}}\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!genre.siValide\\\"\\r\\n                                        [siInput]=\\\"getSiInputMode(genre.siValide)\\\" typeObject=\\\"TYPE_GENRE\\\" (actionRetourSiInconnu)=\\\"genre.siGenreInconnu=$event\\\">\\r\\n                                    </p-auto-complete>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-2\\\">\\r\\n                                    <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"genre.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(genre.siValide)\\\"></i>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                            <p-create-genre-simple [hidden]=\\\"genre.siDelete\\\" [(value)]=\\\"genre.genreLibelle\\\" [siAffiche]=\\\"genre.siGenreInconnu\\\" id=\\\"genreCreateSimple{{genre.groupeGenreId}}\\\"\\r\\n                                (actionRetour)=\\\"genre.typeGenreId=$event;genre.siGenreInconnu=false\\\">\\r\\n                            </p-create-genre-simple>\\r\\n                        </div>\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addGenre();siSubmit=false\\\" title=\\\"Ajouter\\\" *ngIf=\\\"getSiInputMode(detail.siGenreAllValid)\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <!--\\r\\n                <p-label valueLabel=\\\"Genre\\\" siAllLigne=\\\"true\\\" forLabel=\\\"genre\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siGenreAllValid\\\" [(valueCheckBox)]=\\\"detail.siGenreAllValid\\\" (actionRetour)=\\\"changeLieuActiviteValidAll()\\\">\\r\\n                </p-label>\\r\\n                \\r\\n                <div *ngFor=\\\"let genre of detail.genreList\\\">\\r\\n                    <div (change)=\\\"genre.siChange=true\\\" [hidden]=\\\"genre.siDelete\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siGenreValide{{genre.groupeGenreId}}\\\" [(ngModel)]=\\\"genre.siValide\\\" name=\\\"siGenreValide{{genre.groupeGenreId}}\\\"\\r\\n                                     (change)=\\\"changeLieuActiviteValidUnit()\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-7\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"genre.genreLibelle\\\" [(valueId)]=\\\"genre.typeGenreId\\\" id=\\\"genreUnit{{genre.groupeGenreId}}\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!genre.siValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(genre.siValide)\\\" typeObject=\\\"TYPE_GENRE\\\" (actionRetourSiInconnu)=\\\"genre.siGenreInconnu=$event\\\">\\r\\n                                </p-auto-complete>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"genre.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(genre.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-3\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <p-create-genre-simple [(value)]=\\\"genre.genreLibelle\\\" [siAffiche]=\\\"genre.siGenreInconnu\\\" id=\\\"genreCreateSimple{{genre.groupeGenreId}}\\\" (actionRetour)=\\\"genre.typeGenreId=$event;genre.siGenreInconnu=false\\\">\\r\\n                        </p-create-genre-simple>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addGenre();siSubmit=false\\\" title=\\\"Ajouter\\\" *ngIf=\\\"getSiInputMode(detail.siGenreAllValid)\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n            -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Variantes du nom du groupe\\\" forLabel=\\\"variante\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siVarianteAllValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siVarianteAllValid\\\" (actionRetour)=\\\"changeVarianteAllValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <div *ngFor=\\\"let variante of detail.variantes\\\">\\r\\n                            <div class=\\\"row\\\" [hidden]=\\\"variante.siDelete\\\" (change)=\\\"variante.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"varianteSiValide{{variante.varianteId}}\\\" [(ngModel)]=\\\"variante.siValide\\\"\\r\\n                                        name=\\\"varianteSiValide{{variante.varianteId}}\\\" #varianteSiValide=\\\"ngModel\\\" (change)=\\\"changeVarianteUnitValid()\\\">\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <p-input type=\\\"text\\\" id=\\\"variantes{{variante.varianteId}}\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!variante.siValide\\\"\\r\\n                                        [(value)]=\\\"variante.nom\\\" [siInput]=\\\"getSiInputMode(variante.siValide)\\\"></p-input>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                    <p-input type=\\\"text\\\" id=\\\"variantes{{variante.varianteId}}\\\" [(value)]=\\\"variante.nom\\\" [siInput]=\\\"getSiInputMode(variante.siValide)\\\"\\r\\n                                        [siValidationAndNonValid]=\\\"siValidationPageMode&&!variante.siValide\\\"></p-input>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-2\\\">\\r\\n                                    <i *ngIf=\\\"getSiInputMode(variante.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"variante.siDelete=true;siSubmit=false\\\"></i>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <i *ngIf=\\\"getSiInputMode(detail.siVarianteAllValid)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addVariante();siSubmit=false\\\"\\r\\n                            title=\\\"Ajouter\\\"> </i>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Année de création\\\" forLabel=\\\"anneeCreation\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateCreationValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateCreationValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-auto-complete [(value)]=\\\"detail.anneeCreation\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateCreationValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siDateCreationValid)\\\" [(valueId)]=\\\"detail.anneeCreation\\\" id=\\\"anneeCreationId\\\"\\r\\n                            (actionRetour)=\\\"checkAnneeFormat('creation')\\\" (actionRetourSiInconnu)=\\\"siAnneeCreationOk=!$event\\\"\\r\\n                            typeObject=\\\"ANNEE\\\"> </p-auto-complete>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"siAnneeCreationOk\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Aucune année correspondant à votre saisie (l'année doit être entre 1967 à 2016)\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Année de fin\\\" forLabel=\\\"anneeFin\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateFinValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateFinValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-auto-complete [(value)]=\\\"detail.anneeFin\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateFinValid\\\" [siInput]=\\\"getSiInputMode(detail.siDateFinValid)\\\"\\r\\n                            [(valueId)]=\\\"detail.anneeFin\\\" id=\\\"anneeFinId\\\" (actionRetour)=\\\"checkAnneeFormat('fin')\\\" (actionRetourSiInconnu)=\\\"siAnneeFinOk=!$event\\\"\\r\\n                            typeObject=\\\"ANNEE\\\"> </p-auto-complete>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--<div class=\\\"row\\\" [hidden]=\\\"siAnneeFinOk\\\"> [hidden]=\\\"!(p.dateDebut!=null && p.dateFin!=null && p.dateDebut>p.dateFin)\\\"-->\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"siAnneeFinOk\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Aucune année correspondant à votre saisie (l'année doit être entre 1967 à 2016)\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"!(detail.anneeCreation!=null && detail.anneeFin!=null && detail.anneeCreation>detail.anneeFin)\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            L'année de début doit être avant l'année de fin\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Lieu d'origine\\\" forLabel=\\\"lieuOrigine\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siLieuOrigineIdValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siLieuOrigineIdValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--<p-auto-complete [(value)]=\\\"detail.lieuOriginLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuOrigineIdValid\\\"\\r\\n                            [(valueId)]=\\\"detail.lieuOriginId\\\" [siInput]=\\\"getSiInputMode(detail.siLieuOrigineIdValid)\\\" id=\\\"lieuOrigine\\\"\\r\\n                            (actionRetourSiInconnu)=\\\"siLieuOrigineInconu=$event\\\" typeObject=\\\"LIEU\\\">\\r\\n                        </p-auto-complete>-->\\r\\n                        <p-auto-complete-lieu-api [(value)]=\\\"detail.lieuOriginLibelle\\\" [(valueId)]=\\\"detail.lieuOriginId\\\" [(codeInsee)]=\\\"detail.lieuOriginCodeInsee\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuOrigineIdValid\\\" [siInput]=\\\"getSiInputMode(detail.siLieuOrigineIdValid)\\\"\\r\\n                            id=\\\"lieuOrigine\\\"></p-auto-complete-lieu-api>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-3  marginCheckBoxValidation1\\\"></div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-label valueLabel=\\\"Code INSEE lieu origine\\\" forLabel=\\\"lieuOrigineCodeInsee\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"number\\\" id=\\\"lieuOrigineCodeInsee\\\" [(value)]=\\\"detail.lieuOriginCodeInsee\\\" [siInput]=\\\"getSiInputMode(detail.siLieuOrigineIdValid)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuOrigineIdValid\\\" (actionRetour2)=\\\"detail.lieuOriginId=null\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--<p-create-lieu-simple [(value)]=\\\"detail.lieuOriginLibelle\\\" [siAffiche]=\\\"siLieuOrigineInconu\\\" id=\\\"lieuOrigineCreateSimple\\\"\\r\\n                    (actionRetour)=\\\"detail.lieuOriginId=$event;siLieuOrigineInconu=false\\\">\\r\\n                </p-create-lieu-simple>-->\\r\\n\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Liste des périodes d'activité\\\" siAllLigne=\\\"true\\\" forLabel=\\\"periodeActivite\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siPeriodeActiviteAllValid\\\" [(valueCheckBox)]=\\\"detail.siPeriodeActiviteAllValid\\\" (actionRetour)=\\\"changePeriodeActiviteAllValid()\\\">\\r\\n                </p-label>\\r\\n                <!--\\r\\n                <div class=\\\"input-group\\\">\\r\\n                    <span class=\\\"input-group-addon\\\">\\r\\n                        <input type=\\\"checkbox\\\">\\r\\n                        </span>\\r\\n                    <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"test456\\\" name=\\\"test456\\\">\\r\\n                </div>\\r\\n                <div class=\\\"input-group\\\">\\r\\n                    <span class=\\\"input-group-addon\\\" *ngIf=\\\"false\\\">\\r\\n                        <input type=\\\"checkbox\\\">\\r\\n                        </span>\\r\\n                    <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"test456\\\" name=\\\"test456\\\">\\r\\n                </div>\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"test4560\\\" name=\\\"test4560\\\">\\r\\n            -->\\r\\n                <div>\\r\\n                    <div *ngFor=\\\"let p of detail.periodeActiviteList\\\" class=\\\"tableGroupe\\\">\\r\\n                        <br [hidden]=\\\"p.siDelete\\\">\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"p.siDelete\\\" (change)=\\\"p.siChange=true\\\">\\r\\n                            <div class=\\\"col-lg-2 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteBlock{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siValide\\\" name=\\\"siValidePeriodeActiviteBlock{{p.periodeId}}\\\"\\r\\n                                    (change)=\\\"changePeriodeActiviteBlockValid(p)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-8\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i *ngIf=\\\"getSiInputMode(p.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"p.siDelete=true;siSubmit=false\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!p.siDelete\\\">\\r\\n                                <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"form-inline\\\" [hidden]=\\\"p.siDelete\\\">\\r\\n                            <div class=\\\"form-group\\\">\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteDateDebut{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siDateDebutsiValide\\\"\\r\\n                                    name=\\\"siValidePeriodeActiviteDateDebut{{p.periodeId}}\\\" (change)=\\\"changePeriodeActiviteUnitValid(p)\\\"\\r\\n                                    *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <label for=\\\"siValidePeriodeActiviteDateDebut{{p.periodeId}}\\\" class=\\\"label1\\\">Du</label>\\r\\n                                \\r\\n\\r\\n                                <p-input type=\\\"date2\\\" id=\\\"dateDebut{{p.periodeId}}\\\" [(value)]=\\\"p.dateDebut\\\" [siInput]=\\\"getSiInputMode(p.siDateDebutsiValide)\\\"\\r\\n                                    (actionRetour)=\\\"p.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!p.siDateDebutsiValide\\\"\\r\\n                                    class=\\\"form-group\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n\\r\\n                            \\r\\n\\r\\n                        </div>\\r\\n                                </div></div>\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!p.siDelete\\\">\\r\\n                                <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"form-inline\\\">\\r\\n                                \\r\\n    \\r\\n                                <div class=\\\"form-group\\\">\\r\\n                                        <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteDatFin{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siDateFinsiValide\\\"\\r\\n                                        name=\\\"siValidePeriodeActiviteDateFin{{p.periodeId}}\\\" (change)=\\\"changePeriodeActiviteUnitValid(p)\\\"\\r\\n                                        *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <label for=\\\"siValidePeriodeActiviteDatFin{{p.periodeId}}\\\" class=\\\"label1\\\">Au</label>\\r\\n                                    \\r\\n    \\r\\n    \\r\\n    \\r\\n                                    <p-input type=\\\"date2\\\" id=\\\"dateFin{{p.periodeId}}\\\" name=\\\"dateFin{{p.periodeId}}Name\\\" [(value)]=\\\"p.dateFin\\\" [siInput]=\\\"getSiInputMode(p.siDateFinsiValide)\\\"\\r\\n                                        (actionRetour)=\\\"p.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!p.siDateFinsiValide\\\"\\r\\n                                        class=\\\"form-group\\\"></p-input>\\r\\n    \\r\\n                                </div>\\r\\n    \\r\\n                            </div>\\r\\n                        </div>\\r\\n                        </div>\\r\\n                        <!--<div class=\\\"row\\\" [hidden]=\\\"p.siDelete\\\" (change)=\\\"p.siChange=true\\\">\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1\\\">du</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteDateDebut{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siDateDebutsiValide\\\"\\r\\n                                    name=\\\"siValidePeriodeActiviteDateDebut{{p.periodeId}}\\\" #siStatutValid=\\\"ngModel\\\" (change)=\\\"changePeriodeActiviteUnitValid(p)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <p-input type=\\\"date\\\" id=\\\"dateDebut{{p.periodeId}}\\\" [(value)]=\\\"p.dateDebut\\\" [siInput]=\\\"getSiInputMode(p.siDateDebutsiValide)\\\"\\r\\n                                    (actionRetour)=\\\"p.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!p.siDateDebutsiValide\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1\\\">au</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteDatFin{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siDateFinsiValide\\\"\\r\\n                                    name=\\\"siValidePeriodeActiviteDateFin{{p.periodeId}}\\\" #siStatutValid=\\\"ngModel\\\" (change)=\\\"changePeriodeActiviteUnitValid(p)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <p-input type=\\\"date\\\" id=\\\"dateFin{{p.periodeId}}\\\" [(value)]=\\\"p.dateFin\\\" [siInput]=\\\"getSiInputMode(p.siDateFinsiValide)\\\" (actionRetour)=\\\"p.siChange=true\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!p.siDateFinsiValide\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    -->\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"!(p.dateDebut!=null && p.dateFin!=null && p.dateDebut>p.dateFin)\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <div class=\\\"alert alert-danger\\\">\\r\\n                                    La date de début doit être avant la date de fin\\r\\n                                    <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"p.siDelete\\\" (change)=\\\"p.siChange=true\\\">\\r\\n                            \\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValidePeriodeActiviteContexte{{p.periodeId}}\\\" [(ngModel)]=\\\"p.siContexteValide\\\"\\r\\n                                    name=\\\"siValidePeriodeActiviteContexte{{p.periodeId}}\\\" (change)=\\\"changePeriodeActiviteUnitValid(p)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Contexte</label>\\r\\n                                </div>\\r\\n                            <div class=\\\"col-lg-7\\\">\\r\\n                                <p-input type=\\\"text\\\" id=\\\"context{{p.periodeId}}\\\" [(value)]=\\\"p.contexte\\\" [siInput]=\\\"getSiInputMode(p.siContexteValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!p.siContexteValide\\\"></p-input>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" [hidden]=\\\"p.siDelete\\\">\\r\\n                            <br>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <i *ngIf=\\\"getSiInputMode(detail.siPeriodeActiviteAllValid)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addPeriodeActivite();siSubmit=false\\\"\\r\\n                        title=\\\"Ajouter\\\"> </i>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <p-label valueLabel=\\\"Personne(s) [relations]\\\" siAllLigne=\\\"true\\\" forLabel=\\\"auteurRelation\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siAuteurAllValid\\\" [(valueCheckBox)]=\\\"detail.siAuteurAllValid\\\" (actionRetour)=\\\"changeAuteurRelationAllValid()\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div>\\r\\n                    <div *ngFor=\\\"let auteur of detail.auteurList;\\\">\\r\\n                        <div class=\\\"tableGroupe\\\" *ngIf=\\\"!auteur.siDelete\\\">\\r\\n                            <br>\\r\\n\\r\\n                            <div class=\\\"row \\\" *ngIf=\\\"!auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-2 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                    <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siValideAuteurBlock{{auteur.groupeCompositionArtisteId}}\\\" [(ngModel)]=\\\"auteur.siValide\\\"\\r\\n                                        name=\\\"siValideAuteurBlock{{auteur.groupeCompositionArtisteId}}\\\" (change)=\\\"changeAuteurRelationBlockAuteurAllValid(auteur)\\\">\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-8\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-2\\\">\\r\\n                                    <i *ngIf=\\\"getSiInputMode(auteur.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"auteur.siDelete=true;siSubmit=false\\\"></i>\\r\\n                                </div>\\r\\n\\r\\n                            </div>\\r\\n                            \\r\\n\\r\\n                            <div class=\\\"row\\\" *ngIf=\\\"!auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n                                <div class=\\\"col-lg-3\\\">\\r\\n                                    <p-label valueLabel=\\\"Personne\\\" forLabel=\\\"auteurNom\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siAuteurValid{{auteur.groupeCompositionArtisteId}}\\\"\\r\\n                                        [(valueCheckBox)]=\\\"auteur.siPersonneIdValide\\\" (actionRetour)=\\\"changeAuteurRelationAuteurPersonne(auteur);\\\">\\r\\n                                    </p-label>\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-5\\\">\\r\\n                                    <p-auto-complete [(value)]=\\\"auteur.personneNomPrenom\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siPersonneIdValide\\\"\\r\\n                                        [(valueId)]=\\\"auteur.personneId\\\" [siInput]=\\\"getSiInputMode(auteur.siPersonneIdValide)\\\"\\r\\n                                        id=\\\"auteurNom{{auteur.groupeCompositionArtisteId}}{{auteur.nom}}\\\" (actionRetour)=\\\"auteur.siChange=true;addAuteurRoleUnit(auteur)\\\"\\r\\n                                        [siRequired]=\\\"!auteur.siDelete\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event;auteur.siChange=true;\\\"\\r\\n                                        typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                                    </p-auto-complete>\\r\\n\\r\\n                                </div>\\r\\n                                <div class=\\\"col-lg-4\\\">\\r\\n\\r\\n                                </div>\\r\\n\\r\\n                            </div>\\r\\n                            <p-create-personne-simple [(value)]=\\\"auteur.personneNomPrenom\\\" [siAffiche]=\\\"auteur.siAuteurInconnu && !auteur.siDelete\\\" id=\\\"auteur2Nom{{auteur.groupeCompositionArtisteId}}\\\"\\r\\n                                (actionRetour)=\\\"auteur.personneId=$event;auteur.siAuteurInconnu=false;auteur.siChange=true\\\">\\r\\n                            </p-create-personne-simple>\\r\\n                            <br *ngIf=\\\"!(auteur.personneId!=null && !auteur.siDelete)\\\">\\r\\n                            <div *ngIf=\\\"auteur.personneId!=null && !auteur.siDelete\\\">\\r\\n                                <div *ngFor=\\\"let role of auteur.roles\\\">\\r\\n\\r\\n\\r\\n                                    <br *ngIf=\\\"!role.siDelete\\\">\\r\\n                                    <div class=\\\"row\\\" *ngIf=\\\"!role.siDelete\\\" (change)=\\\"role.siChange=true\\\">\\r\\n                                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                        </div>\\r\\n\\r\\n                                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"auteurRole{{role.groupeCompositionArtisteRoleId}}\\\" [(ngModel)]=\\\"role.siValide\\\"\\r\\n                                                name=\\\"auteurRole{{role.groupeCompositionArtisteRoleId}}\\\" (change)=\\\"changeAuteurRelationBlockRoleBlockValid(role,auteur)\\\">\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-2\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-3\\\">\\r\\n                                            <p-label valueLabel=\\\"Role\\\" forLabel=\\\"auteurRole\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siAuteurRoleValid{{role.groupeCompositionArtisteRoleId}}\\\"\\r\\n                                                [(valueCheckBox)]=\\\"role.siTypeRoleIdValide\\\" (actionRetour)=\\\"changeAuteurRelationBlockRoleUnitValid(role,auteur);\\\"\\r\\n                                                siPetit=\\\"true\\\">\\r\\n                                            </p-label>\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-4\\\">\\r\\n                                            <p-auto-complete [(value)]=\\\"role.typeRoleLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siTypeRoleIdValide\\\"\\r\\n                                                [(valueId)]=\\\"role.typeRoleId\\\" [siInput]=\\\"getSiInputMode(role.siTypeRoleIdValide)\\\"\\r\\n                                                id=\\\"auteurRole{{role.groupeCompositionArtisteRoleId}}{{auteur.groupeCompositionArtisteId}}\\\"\\r\\n                                                (actionRetour)=\\\"role.siChange=true;auteur.siChange=true\\\" (actionRetourSiInconnu)=\\\"role.siRoleInconnu=$event\\\"\\r\\n                                                typeObject=\\\"ROLE\\\">\\r\\n                                            </p-auto-complete>\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-2\\\">\\r\\n                                            <i *ngIf=\\\"getSiInputMode(true)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"role.siDelete=true;role.siChange=true;auteur.siChange=true;siSubmit=false\\\"></i>\\r\\n                                        </div>\\r\\n\\r\\n                                    </div>\\r\\n                                    <div [hidden]=\\\"!role.siRoleInconnu || role.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                                        Role inconnue : si aucune propostion de groupe correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                                        <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                                    </div>\\r\\n                                    <p-create-role-simple [(value)]=\\\"role.typeRoleLibelle\\\" [siAffiche]=\\\"role.siRoleInconnu && !role.siDelete\\\" id=\\\"auteurRoleCreate{{role.groupeCompositionArtisteRoleId}}{{auteur.groupeCompositionArtisteId}}\\\"\\r\\n                                        (actionRetour)=\\\"role.typeRoleId=$event;role.siRoleInconnu=false;siSubmit=false\\\">\\r\\n                                    </p-create-role-simple>\\r\\n                                    <div class=\\\"row\\\" *ngIf=\\\"!role.siDelete\\\" (change)=\\\"role.siChange=true\\\">\\r\\n                                        <div class=\\\"col-lg-2\\\">\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-3\\\">\\r\\n                                            <p-label valueLabel=\\\"Du\\\" forLabel=\\\"dateDebut\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siAuteurDateDebutValid{{role.groupeCompositionArtisteRoleId}}\\\"\\r\\n                                                [(valueCheckBox)]=\\\"role.siDateDebutValide\\\" (actionRetour)=\\\"changeAuteurRelationBlockRoleUnitValid(role,auteur);\\\"\\r\\n                                                siPetit=\\\"true\\\">\\r\\n                                            </p-label>\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-6  form-inline\\\">\\r\\n                                            <p-input type=\\\"date2\\\" id=\\\"dateDebut{{role.groupeCompositionArtisteRoleId}}\\\" [(value)]=\\\"role.dateDebut\\\" [siInput]=\\\"getSiInputMode(role.siDateDebutValide)\\\"\\r\\n                                                (actionRetour)=\\\"role.siChange=true;auteur.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateDebutValide\\\"></p-input>\\r\\n                                        </div>\\r\\n                                    </div>\\r\\n                                    <div class=\\\"row\\\" *ngIf=\\\"!role.siDelete\\\" (change)=\\\"role.siChange=true\\\">\\r\\n                                        <div class=\\\"col-lg-2\\\">\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-3\\\">\\r\\n                                            <p-label valueLabel=\\\"Au\\\" forLabel=\\\"dateFin\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siAuteurDateFinValid{{role.groupeCompositionArtisteRoleId}}\\\"\\r\\n                                                [(valueCheckBox)]=\\\"role.siDateFinValide\\\" (actionRetour)=\\\"changeAuteurRelationBlockRoleUnitValid(role,auteur);\\\"\\r\\n                                                siPetit=\\\"true\\\">\\r\\n                                            </p-label>\\r\\n                                        </div>\\r\\n                                        <div class=\\\"col-lg-6 form-inline\\\">\\r\\n                                            <p-input type=\\\"date2\\\" id=\\\"dateFin{{role.groupeCompositionArtisteRoleId}}\\\" [(value)]=\\\"role.dateFin\\\" [siInput]=\\\"getSiInputMode(role.siDateFinValide)\\\"\\r\\n                                                (actionRetour)=\\\"role.siChange=true;auteur.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateFinValide\\\"></p-input>\\r\\n                                        </div>\\r\\n                                    </div>\\r\\n                                    <div class=\\\"row\\\" [hidden]=\\\"!(role.dateFin!=null && role.dateFin!=null && role.dateDebut>role.dateFin)\\\">\\r\\n                                        <div class=\\\"col-lg-12\\\">\\r\\n                                            <div class=\\\"alert alert-danger\\\">\\r\\n                                                La date de début doit être avant la date de fin\\r\\n                                                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                                            </div>\\r\\n                                        </div>\\r\\n                                    </div>\\r\\n\\r\\n                                </div>\\r\\n                                <i *ngIf=\\\"getSiInputMode(auteur.siRoleAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addAuteurRole(auteur);siSubmit=false;auteur.siChange=true;\\\"\\r\\n                                    title=\\\"Ajouter un rôle\\\"> </i>\\r\\n                                <br>\\r\\n                                <br>\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <br>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n                <i *ngIf=\\\"getSiInputMode(detail.siAuteurAllValid)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addAuteur();siSubmit=false\\\"\\r\\n                    title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n\\r\\n                <br>\\r\\n                <br>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Description\\\" siAllLigne=\\\"true\\\" forLabel=\\\"description\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDescriptionValid\\\"\\r\\n                    [(valueCheckBox)]=\\\"detail.siDescriptionValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <p-input type=\\\"textarea\\\" id=\\\"description\\\" [(value)]=\\\"detail.description\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDescriptionValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siDescriptionValid)\\\"></p-input>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION' || mode=='MODIFICATION'\\\">\\r\\n                    <div class=\\\" col-lg-12\\\">\\r\\n                        <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!groupeForm.form.valid || !checkSiFormulaireValide()\\\">Sauvegarder</button>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </form>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <p-file [detail]=\\\"detail\\\" [siChangeFileValidAll]=\\\"siRecalculeFileChange\\\" [siValidationMode]=\\\"siValidationPageMode\\\" [siSubmitOk]=\\\"siSubmit&&siSubmitSuccess\\\"\\r\\n                (addFileRetour)=\\\"fileNouveauList.push($event)\\\" (onChangeValidation)=\\\"changeAllUnitValid()\\\" [siInputMode]=\\\"getSiInputMode(detail.siFilePresentAllValid)\\\"></p-file>\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <h3>\\r\\n                <strong>Aperçu</strong>\\r\\n            </h3>\\r\\n            <br>\\r\\n            <br>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"apercuBlock\\\">\\r\\n                    <br>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                        <b>\\r\\n                            <u>{{detail.nom}}\\r\\n                                <span *ngIf=\\\"detail.anneeCreation!=null&&detail.anneeFin!=null\\\">({{detail.anneeCreation}}-{{detail.anneeFin}})</span>\\r\\n                                <span *ngIf=\\\"detail.anneeCreation!=null&&detail.anneeFin==null\\\">(depuis {{detail.anneeCreation}})</span>\\r\\n                                <span *ngIf=\\\"detail.anneeCreation==null&&detail.anneeFin!=null\\\">(jusqu'à {{detail.anneeFin}})</span>\\r\\n\\r\\n\\r\\n                            </u>\\r\\n                        </b>\\r\\n                    </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        <span *ngIf=\\\"detail.genreList!=null&&detail.genreList.length>0\\\">\\r\\n                            <span *ngFor=\\\"let genre of detail.genreList;let last=last\\\">{{genre.genreLibelle}}\\r\\n                                <span *ngIf=\\\"!last\\\">, </span>\\r\\n                            </span>\\r\\n                        </span>\\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        {{detail.lieuOriginLibelle}}\\r\\n                        <span *ngIf=\\\"detail.lieuOriginCodeInsee!=null&&detail.lieuOriginCodeInsee>0\\\">\\r\\n                        ({{detail.lieuOriginCodeInsee}})</span>\\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        <span *ngFor=\\\"let variante of detail.variantes;let last = last\\\">\\r\\n                            <span *ngIf=\\\"!variante.siDelete\\\">{{variante.nom}}</span>\\r\\n                            <span *ngIf=\\\"!variante.siDelete&&!last\\\">/</span>\\r\\n                        </span>\\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n\\r\\n                    <!--\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <h5><b>Membres actuels</b></h5>\\r\\n                    </div>\\r\\n                    <div *ngFor=\\\"let compo of detail.auteurList\\\">\\r\\n                        <span *ngIf=\\\"compareDate(compo.dateFin) &&!compo.siDelete\\\"><u>{{compo.personneNomPrenom}}</u></span>\\r\\n                        test : {{compo.dateFin}} -- \\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <h5><b>Anciens membres</b></h5>\\r\\n                    </div>\\r\\n                    <div *ngFor=\\\"let compo of detail.auteurList\\\">\\r\\n                        <span *ngIf=\\\"!compo.siTjrActifDsGroupe &&!compo.siDelete\\\"><u>{{compo.nom}}</u></span>\\r\\n                    </div>\\r\\n-->\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                       \\r\\n                            <b>Membres du groupe</b>\\r\\n                       \\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <ul *ngFor=\\\"let compo of detail.auteurList\\\">\\r\\n                        <div *ngIf=\\\"!compo.siDelete && compo.personneId!=null && compo.personneId>0\\\" class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n\\r\\n                                <li>\\r\\n                                    <a routerLink=\\\"/personneDetail/{{compo.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{compo.personneNomPrenom}}</a>\\r\\n                                    <span *ngIf=\\\"compo.roles!=null&&compo.roles.length>0\\\">\\r\\n                                        (<span *ngFor=\\\"let role of compo.roles;let last = last\\\"><span *ngIf=\\\"!role.siDelete\\\">{{role.typeRoleLibelle}}<span *ngIf=\\\"!last\\\">, </span></span></span>)\\r\\n                                    </span>\\r\\n                                    <!--<span *ngIf=\\\"compo.typeRoleLibelle!=null && compo.typeRoleLibelle.length>0\\\"> ({{compo.typeRoleLibelle}}) </span>\\r\\n                                <span *ngIf=\\\"compo.dateDebut!=null && compo.dateDebut.length>0 && compo.dateFin!=null && compo.dateFin.length>0\\\"> du {{compo.dateDebut}} au {{compo.dateFin}} </span>\\r\\n                                <span *ngIf=\\\"compo.dateDebut!=null && compo.dateDebut.length>0 && (compo.dateFin==null || compo.dateFin.length==0)\\\"> depuis le {{compo.dateDebut}}</span>\\r\\n                                <span *ngIf=\\\"(compo.dateDebut==null || compo.dateDebut.length==0) && compo.dateFin!=null && compo.dateFin.length>0\\\"> jusqu'au {{compo.dateFin}}</span>-->\\r\\n                                </li>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </ul>\\r\\n\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        \\r\\n                            <b>Description</b>\\r\\n                        \\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        <span>{{detail.description}}</span>\\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        \\r\\n                            <b>Chronologie</b>\\r\\n                        \\r\\n                            </div>\\r\\n                    </div>\\r\\n                    \\r\\n                        <ul *ngIf=\\\"detail.anneeCreation != null && detail.anneeCreation>0\\\">\\r\\n                                <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                    <li>\\r\\n                        <span>{{detail.anneeCreation}} : Formation du groupe</span>\\r\\n                    </li>    \\r\\n                    </div>\\r\\n                                </div>\\r\\n                        \\r\\n                        </ul>\\r\\n                    \\r\\n                    <ul *ngFor=\\\"let album of detail.albumList\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            \\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                    <li>\\r\\n                        <span *ngIf=\\\"album.annee!=null\\\">{{album.annee}} : </span>\\r\\n                        <a routerLink=\\\"/productionAlbumDetail/{{album.albumId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{album.nom}}</a>\\r\\n                    </li>    \\r\\n                    \\r\\n                        \\r\\n                        \\r\\n                    </div>\\r\\n                        </div>\\r\\n                </ul>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                        \\r\\n                            <b>Fichiers joints</b>\\r\\n                        \\r\\n                            </div>\\r\\n                    </div>\\r\\n                    <ul *ngFor=\\\"let f of detail.fileList\\\">\\r\\n                        <div class=\\\"row\\\" >\\r\\n                            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!f.siDelete\\\" >\\r\\n                                <li><a routerLinkActive=\\\"active\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a></li>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </ul>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <p-detail-info-utilisateur [createur]=\\\"detail.createur\\\" [modificateurList]=\\\"detail.modificateurList\\\" [siPersonneInterne]=\\\"user.profil == 'SUPER_ADMINISTRATEUR' || user.profil == 'CHERCHEUR'\\\"></p-detail-info-utilisateur>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <br>\\r\\n                </div>\\r\\n            </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/groupe-detail.component.html\n// module id = 1053\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'groupe'\\\"></navbar>\\r\\n\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n\\t<div class=\\\"col-lg-3\\\">\\r\\n\\t</div>\\r\\n\\t<div class=\\\"col-lg-6\\\">\\r\\n\\t\\t<div class=\\\"row\\\">\\r\\n\\t\\t\\t<div class=\\\"col-lg-4\\\">\\r\\n\\t\\t\\t\\t<div class=\\\"row\\\">\\r\\n\\t\\t\\t\\t\\t<div class=\\\"col-lg-12\\\">\\r\\n\\t\\t\\t\\t\\t\\t<label for=\\\"sel1\\\" id=\\\"selectGroupLabel\\\" class=\\\"label1\\\">Choisir un groupe à compléter</label>\\r\\n\\t\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t\\t<div class=\\\"row\\\"  *ngIf=\\\"getSiAdministrateur()\\\">\\r\\n\\r\\n\\t\\t\\t\\t\\t<div class=\\\"col-lg-7\\\">\\r\\n\\t\\t\\t\\t\\t\\t<label class=\\\"label1\\\">Si suppression mode</label>\\r\\n\\t\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t\\t\\t<div class=\\\"col-lg-2\\\">\\r\\n\\t\\t\\t\\t\\t\\t<input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siDeleteMode\\\" [(ngModel)]=\\\"siDeleteMode\\\" name=\\\"siDeleteMode\\\">\\r\\n\\t\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t\\t\\t<div class=\\\"col-lg-3\\\">\\r\\n\\t\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t</div>\\r\\n\\t\\t\\t<div class=\\\"col-lg-4\\\">\\r\\n\\t\\t\\t\\t<select class=\\\"form-control\\\" id=\\\"groupeSelect\\\" name=\\\"groupeSelect\\\" [(ngModel)]=\\\"search\\\" #groupeSelect=\\\"ngModel\\\" (change)=\\\"goToDetail()\\\">\\r\\n\\t\\t\\t\\t\\t<option [value]=\\\"\\\"></option>\\r\\n\\t\\t\\t\\t\\t<option *ngFor=\\\"let g of rows\\\" [value]=\\\"g.groupeId\\\" >{{g.nom}}</option>\\r\\n\\t\\t\\t\\t</select>\\r\\n\\t\\t\\t</div>\\r\\n\\t\\t\\t<div class=\\\"col-lg-4\\\">\\r\\n\\t\\t\\t\\t<div *ngIf=\\\"siDroitAccessCreate\\\">\\r\\n\\t\\t\\t\\t\\tou\\r\\n\\t\\t\\t\\t\\t<button type=\\\"button\\\" class=\\\"btn\\\" routerLink=\\\"/groupeDetail/0/CREATION\\\" routerLinkActive=\\\"active\\\" id=\\\"btnGroup\\\">Créer un nouveau groupe</button>\\r\\n\\t\\t\\t\\t</div>\\r\\n\\t\\t\\t</div>\\r\\n\\r\\n\\t\\t</div>\\r\\n\\t</div>\\r\\n\\t<div class=\\\"col-lg-3\\\">\\r\\n\\t</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/groupesList.component.html\n// module id = 1054\n// module chunks = 1","module.exports = \"<!--<div >\\r\\n<div>\\r\\n<img src=\\\"app/images/PIND_BD.jpg\\\" style=\\\"float: left\\\" />\\r\\n</div>\\r\\n<div style=\\\"margin-left: 612px\\\">\\r\\n<img src=\\\"app/images/PIND_center.jpg\\\"  />\\r\\n</div>\\r\\n<div>\\r\\n</div>\\r\\n</div>\\r\\n-->\\r\\n\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n    <!--<a routerLink=\\\"/accueil\\\" routerLinkActive=\\\"active\\\">-->\\r\\n        <a (click)=\\\"getAccueilLink()\\\">\\r\\n    <div class=\\\"col-lg-4\\\">\\r\\n        <img src=\\\"assets/PIND_BD.jpg\\\" style=\\\"float: left\\\" />\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-4\\\">\\r\\n        <img src=\\\"assets/PIND_center.jpg\\\" />\\r\\n\\r\\n    </div>\\r\\n    </a>\\r\\n    <div class=\\\"col-lg-4\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n            <div style=\\\"margin-top: 25px\\\" class=\\\"userInfo\\\">\\r\\n                <a routerLink=\\\"/utilisateurMonCompte\\\" routerLinkActive=\\\"active\\\" *ngIf=\\\"user!=null\\\"  class=\\\"userInfoLink\\\">{{user.nom}} <span *ngIf=\\\"user.prenom!=null && user.prenom.length>0\\\"> {{user.prenom}}</span> <span *ngIf=\\\"user.profilLibelle!=null && user.profilLibelle.length>0\\\">(<span *ngIf=\\\"user.login!=null\\\">{{user.login}}, </span>{{user.profilLibelle}})</span></a> <span *ngIf=\\\"user!=null && user.nom!=null\\\"> | </span> <a (click)=\\\"seDeconnecter()\\\" routerLinkActive=\\\"active\\\"  class=\\\"fa fa-power-off\\\" ></a>\\r\\n                <!--<a routerLink=\\\"/utilisateurMonCompte\\\" routerLinkActive=\\\"active\\\" *ngIf=\\\"user!=null\\\"  class=\\\"userInfoLink\\\">{{getToto()}}</a> <span *ngIf=\\\"user!=null && user.nom!=null\\\"> | </span> <a (click)=\\\"seDeconnecter()\\\" routerLinkActive=\\\"active\\\"  class=\\\"userInfoLink\\\">Se déconnecter</a>-->\\r\\n            </div>\\r\\n        </div>\\r\\n        \\r\\n    </div>\\r\\n    <div>\\r\\n    </div>\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/header.component.html\n// module id = 1055\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'administration'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n\\r\\n  <div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-8\\\">\\r\\n\\r\\n\\r\\n      <form (ngSubmit)=\\\"onSubmit()\\\" #listObjet=\\\"ngForm\\\" class=\\\"searchCritere\\\">\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-1\\\">\\r\\n            <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Type</label>\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-3\\\">\\r\\n            <select class=\\\"form-control\\\" id=\\\"typeList\\\" [(ngModel)]=\\\"selectCode\\\" name=\\\"selectCode\\\" (change)=\\\"rows=[]\\\">\\r\\n              <option [value]=\\\"\\\"></option>\\r\\n              <option *ngFor=\\\"let t of listType\\\" [value]=\\\"t.code\\\">{{t.libelle}}</option>\\r\\n            </select>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-10\\\">\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-2\\\">\\r\\n            <button type=\\\"submit\\\" class=\\\"btn button-search\\\">Rechercher</button>\\r\\n          </div>\\r\\n        </div>\\r\\n        <br>\\r\\n      </form>\\r\\n\\r\\n      <br><br>\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"listResult!=null && listResult.length>0\\\">\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n          <div [hidden]=\\\"!aucunResultat\\\"><strong>Aucun résultat ne correspond à votre recherche</strong></div>\\r\\n          <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n            <thead>\\r\\n              <tr>\\r\\n                <th width=\\\"80%\\\" [class]=\\\"selectedClass('libelle')\\\" (click)=\\\"changeSorting('libelle')\\\">Libelle</th>\\r\\n\\r\\n              </tr>\\r\\n            </thead>\\r\\n            <tbody>\\r\\n              <tr *ngFor=\\\"let r of listResult | orderBy : convertSorting()\\\">\\r\\n\\r\\n                <td>{{r.libelle}}</td>\\r\\n\\r\\n              </tr>\\r\\n            </tbody>\\r\\n          </table>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n          <div *ngIf=\\\"showAddField\\\">\\r\\n            <strong>Ajouter un élément :</strong>\\r\\n            <div *ngIf=\\\"this.siValeurDejaExistante\\\" class=\\\"alert alert-danger\\\">La valeur est déjà présente dans la liste.</div>\\r\\n            <div *ngIf=\\\"this.siAddElementKo\\\" class=\\\"alert alert-danger\\\">Erreur lors de l'ajout de l'élément.</div>\\r\\n            <div *ngIf=\\\"this.siAddElementOk\\\" class=\\\"alert alert-success\\\">L'élémenent à été ajouté.</div>\\r\\n            <div (clickOutside)=\\\"deleteMessage()\\\"></div>\\r\\n  \\r\\n            <input type=\\\"text\\\" id=\\\"addElement\\\" name=\\\"addElement\\\" autocomplete=\\\"off\\\" [(ngModel)]=\\\"valueAdd\\\" class=\\\"form-control\\\"\\r\\n              (keyup)=\\\"this.siValeurDejaExistante=false\\\">\\r\\n            <button type=\\\"button\\\" (click)=\\\"addElement()\\\" class=\\\"btn\\\" id=\\\"savePerson\\\">Ajouter</button>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n          <div><strong>Regrouper des éléments :</strong>\\r\\n            <div><strong>Nom du regroupement :</strong></div>\\r\\n            <div *ngIf=\\\"valueRegroup!=null && valueRegroup.id>0\\\">\\r\\n              <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n\\r\\n                <tbody>\\r\\n                  <tr>\\r\\n                    <td>{{valueRegroup.libelle}}</td>\\r\\n                  </tr>\\r\\n                </tbody>\\r\\n              </table>\\r\\n\\r\\n            </div>\\r\\n\\r\\n            <div><strong (click)=\\\"siSelectValueRegroupA=!siSelectValueRegroupA\\\">Sélection de la valeur de regroupement\\r\\n                :</strong></div>\\r\\n            <div *ngIf=\\\"siSelectValueRegroupA\\\">\\r\\n              <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n\\r\\n                <tbody>\\r\\n                  <tr *ngFor=\\\"let r of listResultRegroupeA | orderBy : convertSorting()\\\">\\r\\n                    <td>\\r\\n                      <a (click)=\\\"selectValueRegroupe(r)\\\">{{r.libelle}}</a>\\r\\n                    </td>\\r\\n                  </tr>\\r\\n                </tbody>\\r\\n              </table>\\r\\n\\r\\n            </div>\\r\\n\\r\\n            <div><br><strong (click)=\\\"siSelectValueRegroupB=!siSelectValueRegroupB\\\">Valeurs qui seront regroupées :</strong></div>\\r\\n            <div *ngIf=\\\"siSelectValueRegroupB && listResultRegroupeB!=null\\\">\\r\\n              <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n\\r\\n                <tbody>\\r\\n                  <tr *ngFor=\\\"let r of listResultRegroupeB | orderBy : convertSorting()\\\">\\r\\n                    <td>\\r\\n                      <a (click)=\\\"selectValueRegroupe(r)\\\">{{r.libelle}}</a>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                      <i (click)=\\\"deleteRegroupement(r);\\\" class=\\\"fa fa-angle-down\\\" aria-hidden=\\\"true\\\" title=\\\"Ajouter au regroupement\\\"></i>\\r\\n\\r\\n                    </td>\\r\\n                  </tr>\\r\\n                </tbody>\\r\\n              </table>\\r\\n\\r\\n            </div>\\r\\n\\r\\n            <div><br><strong (click)=\\\"siSelectValueRegroupC=!siSelectValueRegroupC\\\">Sélection des valeurs à regrouper :</strong></div>\\r\\n            <div *ngIf=\\\"siSelectValueRegroupC\\\">\\r\\n              <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n\\r\\n                <tbody>\\r\\n                  <tr *ngFor=\\\"let r of listResultRegroupeC | orderBy : convertSorting()\\\">\\r\\n                    <td>\\r\\n                      <a (click)=\\\"selectValueRegroupe(r)\\\">{{r.libelle}}</a>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                      <i (click)=\\\"addRegroupement(r);\\\" class=\\\"fa fa-angle-up\\\" aria-hidden=\\\"true\\\" title=\\\"Ajouter au regroupement\\\"></i>\\r\\n\\r\\n                    </td>\\r\\n                  </tr>\\r\\n                </tbody>\\r\\n              </table>\\r\\n\\r\\n            </div>\\r\\n            <br>\\r\\n            <button type=\\\"button\\\" (click)=\\\"saveRegroupement()\\\" class=\\\"btn\\\" id=\\\"savePerson\\\" [disabled]=\\\"valueRegroup.id==null || listResultRegroupeB.length==0\\\">Sauvegarder\\r\\n              les regroupements</button>\\r\\n\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n      </div>\\r\\n      <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n\\r\\n\\r\\n      </div>\\r\\n    </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/liste-objets.component.html\n// module id = 1056\n// module chunks = 1","module.exports = \"<div >\\r\\n<br><br><br><br><br><br><br>\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n\\r\\n<div class=\\\"col-lg-5\\\">\\r\\n</div>\\r\\n\\r\\n\\r\\n<div class=\\\"col-lg-2\\\">\\r\\n    <br><br><br><br><br><br><br><br>    \\r\\n    <div class=\\\"container\\\">\\r\\n        <form (ngSubmit)=\\\"onSubmit()\\\" #mdpTempForm=\\\"ngForm\\\">\\r\\n            <div class=\\\"form-group\\\">\\r\\n                <div [hidden]=\\\"!siIdentificationIncorrect\\\" style=\\\"width: 20%;\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Le mot de passe et la confirmation ne sont pas identique\\r\\n                </div>\\r\\n                <div [hidden]=\\\"!siNewMdpTmpMdpIdentique\\\" style=\\\"width: 20%;\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Le mot de passe doit être différent du mot de passe temporaire\\r\\n                </div>\\r\\n                <label for=\\\"mdp\\\" class=\\\"label1\\\">Nouveau mot de passe</label>\\r\\n                <input type=\\\"password\\\" style=\\\"width: 20%;text-align: center\\\" class=\\\"form-control\\\" id=\\\"password1\\\" required [(ngModel)]=\\\"mdp.password\\\" name=\\\"password1\\\" #password1=\\\"ngModel\\\" minlength=\\\"6\\\" pattern=\\\"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\'])[A-Za-z\\\\d$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\']{6,}\\\" >\\r\\n                <div [hidden]=\\\"password1.valid || password1.pristine\\\" class=\\\"alert alert-danger\\\" style=\\\"width: 20%\\\">\\r\\n                    Le mot de passe est obligatoire  (et doit contenir au minimun 6 caractèred dont 1 minuscule, 1 majuscule, 1 chiffre, et un caractère spécial)\\r\\n                </div>\\r\\n                <label for=\\\"confirmation\\\" class=\\\"label1\\\">Confirmation du mot de passe</label>\\r\\n                <input type=\\\"password\\\" style=\\\"width: 20%;text-align: center\\\" class=\\\"form-control\\\" id=\\\"passwordConfirmation\\\" required [(ngModel)]=\\\"mdp.passwordConfirmation\\\" name=\\\"password2\\\" #password2=\\\"ngModel\\\" minlength=\\\"6\\\">\\r\\n                <div [hidden]=\\\"password2.valid || password2.pristine\\\" class=\\\"alert alert-danger\\\" style=\\\"width: 20%;\\\">\\r\\n                    La confirmation du mot de passe est obligatoire\\r\\n                </div>\\r\\n                <br><br>\\r\\n                \\r\\n\\r\\n                <button type=\\\"submit\\\" class=\\\"btn btn-standard\\\" style=\\\"width: 20%;text-align: center\\\"  [disabled]=\\\"!mdpTempForm.form.valid\\\" >Enregistrer</button>\\r\\n                \\r\\n                <!--<button type=\\\"submit\\\" class=\\\"btn btn-successToto\\\" style=\\\"width: 20%;text-align: center\\\"  [disabled]=\\\"!loginForm.form.valid\\\" >Se connecter</button>\\r\\n                -->\\r\\n            </div>\\r\\n            \\r\\n            \\r\\n            \\r\\n            \\r\\n            \\r\\n        </form>\\r\\n    </div>\\r\\n</div>\\r\\n\\r\\n<div class=\\\"col-lg-5\\\">\\r\\n</div>\\r\\n</div>\\r\\n\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/login-password-temporaire.html\n// module id = 1057\n// module chunks = 1","module.exports = \"<div>\\r\\n    <br><br><br><br><br><br><br>\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n            <br><br><br><br><br><br><br><br>\\r\\n            <div class=\\\"container\\\">\\r\\n                <form (ngSubmit)=\\\"onSubmit()\\\" #loginForm=\\\"ngForm\\\">\\r\\n                    <div class=\\\"form-group\\\">\\r\\n                        <div [hidden]=\\\"!siIdentificationIncorrect\\\" style=\\\"width: 20%;\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le login et/ou le mot de passe sont incorrect\\r\\n                        </div>\\r\\n                        <div *ngIf=\\\"siCompteSupprime\\\" style=\\\"width: 20%;\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Ce compte a été supprimé\\r\\n                        </div>\\r\\n                        <input type=\\\"text\\\" style=\\\"width: 20%;text-align: center\\\" class=\\\"form-control\\\" id=\\\"login\\\" required [(ngModel)]=\\\"utiLogin.login\\\"\\r\\n                            name=\\\"login\\\" #login=\\\"ngModel\\\" placeholder=\\\"Nom d'utilisateur\\\">\\r\\n                        <div [hidden]=\\\"login.valid || login.pristine\\\" class=\\\"alert alert-danger\\\" style=\\\"width: 20%\\\">\\r\\n                            Le login est obligatoire\\r\\n                        </div>\\r\\n\\r\\n                        <input type=\\\"password\\\" style=\\\"width: 20%;text-align: center\\\" class=\\\"form-control\\\" id=\\\"password\\\" required [(ngModel)]=\\\"utiLogin.password\\\"\\r\\n                            name=\\\"password\\\" #password=\\\"ngModel\\\" minlength=\\\"5\\\" placeholder=\\\"Mot de passe\\\">\\r\\n                        <div [hidden]=\\\"password.valid || password.pristine\\\" class=\\\"alert alert-danger\\\" style=\\\"width: 20%;\\\">\\r\\n                            Le mot de passe est obligatoire\\r\\n                        </div>\\r\\n                        <nav>\\r\\n                            <div> <a routerLink=\\\"/mdpOublie\\\" routerLinkActive=\\\"active\\\">Mot de passe oublié? ></a> </div>\\r\\n                        </nav>\\r\\n                        <br><br>\\r\\n\\r\\n\\r\\n                        <button type=\\\"submit\\\" class=\\\"btn button-petit\\\" style=\\\"width: 20%;text-align: center\\\" [disabled]=\\\"!loginForm.form.valid\\\">Se connecter</button>\\r\\n\\r\\n                        <!--<button type=\\\"submit\\\" class=\\\"btn btn-successToto\\\" style=\\\"width: 20%;text-align: center\\\"  [disabled]=\\\"!loginForm.form.valid\\\" >Se connecter</button>\\r\\n                -->\\r\\n\\r\\n                    </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n                </form>\\r\\n            </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n        </div>\\r\\n    </div>\\r\\n\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\" style=\\\"text-align: center\\\">\\r\\n            <label>Vous pouvez vous inscrire</label>\\r\\n            <br>\\r\\n            <button type=\\\"button\\\" (click)=\\\"goToInscription()\\\" class=\\\"btn button-petit\\\" style=\\\"width: 20%;text-align: center\\\">S'inscrire</button>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n        </div>\\r\\n\\r\\n    </div>\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\" style=\\\"text-align: center\\\">\\r\\n            <label>Vous pouvez vous connecté sans compte avec des droits restreints :</label>\\r\\n            <br>\\r\\n            <button type=\\\"button\\\" (click)=\\\"goToAppSansConnexion()\\\" class=\\\"btn button-petit\\\" style=\\\"width: 350px;text-align: center\\\">Accéder à l'application avec des droits limités</button>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n        </div>\\r\\n\\r\\n    </div>\\r\\n\\r\\n</div>\\r\\n<br><br>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/login.component.html\n// module id = 1058\n// module chunks = 1","module.exports = \"<div>\\r\\n  <br><br><br><br><br><br><br>\\r\\n\\r\\n  <div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-5\\\">\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-2\\\">\\r\\n      <br><br><br><br><br><br><br><br>\\r\\n      <div class=\\\"\\\">\\r\\n        <form (ngSubmit)=\\\"onSubmit()\\\" #loginForm=\\\"ngForm\\\">\\r\\n          <div class=\\\"form-group\\\">\\r\\n            <div *ngIf=\\\"!siOk && message\\\" class=\\\"alert alert-danger\\\">{{message}}</div>\\r\\n            <div *ngIf=\\\"siOk\\\" class=\\\"alert alert-success\\\">\\r\\n              <p>\\r\\n                Un mail contenant un mot de passe temporaire vous a été envoyé. <br />\\r\\n                À la connexion, ce mot de passe devra être changé.\\r\\n              </p>\\r\\n              <p>\\r\\n                <a routerLink=\\\"/login\\\" routerLinkActive=\\\"active\\\">\\r\\n                  Vous allez être redirigé vers la page de connexion dans {{nbrSecondeAttente}} seconde ou cliquer ici.\\r\\n                </a>\\r\\n              </p>\\r\\n            </div>\\r\\n            <input type=\\\"text\\\" style=\\\"text-align: center\\\" class=\\\"form-control\\\" id=\\\"loginId\\\" required\\r\\n              [(ngModel)]=\\\"login\\\" name=\\\"loginId\\\" #loginId=\\\"ngModel\\\" placeholder=\\\"login\\\">\\r\\n            <div [hidden]=\\\"(loginId.valid || loginId.pristine)\\\" class=\\\"alert alert-danger\\\">\\r\\n              Le login est obligatoire\\r\\n            </div>\\r\\n\\r\\n            <br><br>\\r\\n\\r\\n            <button type=\\\"submit\\\" class=\\\"btn btn-block btn-standard\\\" style=\\\"text-align: center\\\" [disabled]=\\\"!loginForm.form.valid\\\">\\r\\n              Demande de nouveau mot de passe\\r\\n            </button>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/mdp_oublie.component.html\n// module id = 1059\n// module chunks = 1","module.exports = \"<nav role=\\\"navigation\\\" class=\\\"navbar navbar-default\\\">\\r\\n\\r\\n    <!-- Brand and toggle get grouped for better mobile display -->\\r\\n\\r\\n    <div class=\\\"navbar-header\\\">\\r\\n\\r\\n        <button type=\\\"button\\\" data-target=\\\"#navbarCollapse\\\" data-toggle=\\\"collapse\\\" class=\\\"navbar-toggle\\\">\\r\\n\\r\\n                <span class=\\\"sr-only\\\">Toggle navigation</span>\\r\\n\\r\\n                <span class=\\\"icon-bar\\\"></span>\\r\\n\\r\\n                <span class=\\\"icon-bar\\\"></span>\\r\\n\\r\\n                <span class=\\\"icon-bar\\\"></span>\\r\\n\\r\\n\\r\\n            </button>\\r\\n\\r\\n\\r\\n    </div>\\r\\n\\r\\n    <!-- Collection of nav links and other content for toggling -->\\r\\n\\r\\n    <div id=\\\"navbarCollapse\\\" class=\\\"collapse navbar-collapse\\\">\\r\\n\\r\\n        <ul class=\\\"nav navbar-nav\\\" style=\\\"margin-left: 370px;\\\">\\r\\n            <li>\\r\\n                <a routerLink=\\\"/groupesList\\\" *ngIf=\\\"select=='groupe'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='groupe'\\\">Groupes</a>\\r\\n                <a routerLink=\\\"/groupesList\\\" *ngIf=\\\"select!='groupe'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='groupe'\\\">Groupes</a>\\r\\n            </li>\\r\\n            <li>\\r\\n                <a routerLink=\\\"/personneList\\\" *ngIf=\\\"select=='personne'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='personne'\\\">Personnes</a>\\r\\n                <a routerLink=\\\"/personneList\\\" *ngIf=\\\"select!='personne'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='personne'\\\">Personnes</a>\\r\\n            </li>\\r\\n            <li>\\r\\n                <a routerLink=\\\"/productionList\\\" *ngIf=\\\"select=='production'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='production'\\\">Productions</a>\\r\\n                <a routerLink=\\\"/productionList\\\" *ngIf=\\\"select!='production'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='production'\\\">Productions</a>\\r\\n            </li>\\r\\n            <!--<li>\\r\\n                <a data-toggle=\\\"dropdown\\\">Page 1 <span class=\\\"caret\\\"></span></a>\\r\\n                <ul class=\\\"dropdown-menu\\\">\\r\\n                  <li><a href=\\\"#\\\">Page 1-1</a></li>\\r\\n                  <li><a href=\\\"#\\\">Page 1-2</a></li>\\r\\n                  <li><a href=\\\"#\\\">Page 1-3</a></li>\\r\\n                </ul>\\r\\n              </li>-->\\r\\n            <li>\\r\\n                <a routerLink=\\\"/evenementList\\\" *ngIf=\\\"select=='evenement'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='evenement'\\\">Événements</a>\\r\\n                <a routerLink=\\\"/evenementList\\\" *ngIf=\\\"select!='evenement'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='evenement'\\\">Événements</a>\\r\\n            </li>\\r\\n            <!--\\r\\n                <li>\\r\\n                    <a routerLink=\\\"/utilisateurMonCompte\\\" *ngIf=\\\"select=='monCompte'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='monCompte'\\\">Mon Compte</a>\\r\\n                    <a routerLink=\\\"/utilisateurMonCompte\\\" *ngIf=\\\"select!='monCompte'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='monCompte'\\\">Mon Compte</a>\\r\\n                </li>\\r\\n                -->\\r\\n            <li *ngIf=\\\"getSiAdministrateur()\\\">\\r\\n                <a routerLink=\\\"/utilisateurList\\\" *ngIf=\\\"select=='utilisateur'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='utilisateur'\\\">Utilisateurs</a>\\r\\n                <a routerLink=\\\"/utilisateurList\\\" *ngIf=\\\"select!='utilisateur'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='utilisateur'\\\">Utilisateurs</a>\\r\\n            </li>\\r\\n            <li *ngIf=\\\"getSiAdministrateur()\\\">\\r\\n                <a routerLink=\\\"/listObjets\\\" *ngIf=\\\"select=='administration'\\\" routerLinkActive=\\\"active\\\" class=\\\"navSelect\\\" (click)=\\\"select='administration'\\\">Administration</a>\\r\\n                <a routerLink=\\\"/listObjets\\\" *ngIf=\\\"select!='administration'\\\" routerLinkActive=\\\"active\\\" (click)=\\\"select='administration'\\\">Administration</a>\\r\\n            </li>\\r\\n\\r\\n        </ul>\\r\\n\\r\\n        <!--\\r\\n            <ul class=\\\"nav navbar-nav\\\" style=\\\"float: right\\\">\\r\\n                <li><a (click)=\\\"seDeconnecter()\\\" routerLinkActive=\\\"active\\\" style=\\\"\\\">Se déconnecter</a></li>\\r\\n            </ul>\\r\\n            <ul class=\\\"nav navbar-nav\\\" style=\\\"float: right\\\" *ngIf=\\\"user!=null\\\">\\r\\n                <li><a *ngIf=\\\"user!=null\\\" style=\\\"\\\">{{user.nom}} <span *ngIf=\\\"user.prenom!=null && user.prenom.length>0\\\"> {{user.prenom}}</span> <span *ngIf=\\\"user.profilLibelle!=null && user.profilLibelle.length>0\\\">({{user.profilLibelle}})</span></a></li>\\r\\n            </ul>\\r\\n            -->\\r\\n\\r\\n    </div>\\r\\n\\r\\n</nav>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/navbar.component.html\n// module id = 1060\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'personne'\\\"></navbar>\\r\\n<!--<div *ngIf=\\\"mode=='MODIFICATION' || mode=='CREATION'\\\">-->\\r\\n<div>\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n\\r\\n            <div [hidden]=\\\"!(mode=='CREATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Création d'une personne</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!(mode=='MODIFICATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Modification d'une personne</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!(mode=='CONSULTATION')\\\">\\r\\n                <h3>\\r\\n                    <strong>Consultation d'une personne</strong>\\r\\n                </h3>\\r\\n            </div>\\r\\n\\r\\n\\r\\n            <br>\\r\\n            <br>\\r\\n            <form name=\\\"newPersonForm\\\" (ngSubmit)=\\\"onSubmit()\\\" #personneForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <!-- a voir pour l'alignement-->\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12 marginCheckBoxValidation1\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siArtisteValidAll\\\" [(ngModel)]=\\\"detail.siArtisteValidAll\\\" name=\\\"siArtisteValidAll\\\"\\r\\n                                    #siArtisteValidAll=\\\"ngModel\\\" (change)=\\\"changeValidAll()\\\">\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-11\\\">\\r\\n                        <label for=\\\"nom\\\" class=\\\"label1\\\">Tout valider</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Homme/femme\\\" forLabel=\\\"civiliteId\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siCiviliteValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siCiviliteValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-select [(valueId)]=\\\"detail.civiliteId\\\" [(value)]=\\\"detail.civiliteLibelle\\\" id=\\\"groupe\\\" typeObject=\\\"CIVILITE\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siCiviliteValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siCiviliteValid)\\\">\\r\\n                        </p-select>\\r\\n                        <!--\\r\\n                        <p-select [list]=\\\"civiliteList\\\" [(value)]=\\\"detail.civiliteLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siCiviliteValid\\\"\\r\\n                            [(valueId)]=\\\"detail.civiliteId\\\" [siInput]=\\\"getSiInputMode(detail.siCiviliteValid)\\\" id=\\\"civiliteId\\\">\\r\\n                        </p-select>-->\\r\\n                        <!--\\r\\n                        <select class=\\\"form-control\\\" id=\\\"civiliteId\\\" [(ngModel)]=\\\"detail.civiliteId\\\" name=\\\"civiliteId\\\" #civiliteId=\\\"ngModel\\\">\\r\\n                        <option [value]=\\\"\\\"></option>\\r\\n                        <option *ngFor=\\\"let c of civiliteList\\\" [value]=\\\"c.id\\\">{{c.libelle}}</option>\\r\\n                    </select>-->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Nom\\\" forLabel=\\\"nom\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siNomValid\\\" [(valueCheckBox)]=\\\"detail.siNomValid\\\"\\r\\n                            (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"text\\\" id=\\\"nom\\\" [(value)]=\\\"detail.nom\\\" [siInput]=\\\"getSiInputMode(detail.siNomValid)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNomValid\\\"\\r\\n                            (actionRetour)=\\\"checkUniciteNomPrenom()\\\" [siRequired]=\\\"detail.surnom==null || detail.surnom.length==0\\\"></p-input>\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"nom\\\" name=\\\"nom\\\" [(ngModel)]=\\\"detail.nom\\\" class=\\\"form-control\\\" #nom=\\\"ngModel\\\" maxlength=\\\"50\\\" required\\r\\n                            (change)=\\\"checkUniciteNomPrenom()\\\">-->\\r\\n                        <!--<jinput [id]=\\\"'nom'\\\" [name]=\\\"'nom'\\\" [detailName]=\\\"detail.nom\\\" [detail]=\\\"detail\\\"></jinput>\\r\\n                    <label>{{detail.nom}}m</label>-->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <!--\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div [hidden]=\\\"nom.valid || nom.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le nom de la personne est obligatoire <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Prénom\\\" forLabel=\\\"prenom\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siPrenomValid\\\" [(valueCheckBox)]=\\\"detail.siPrenomValid\\\"\\r\\n                            (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"text\\\" id=\\\"prenom\\\" [(value)]=\\\"detail.prenom\\\" [siInput]=\\\"getSiInputMode(detail.siPrenomValid)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siPrenomValid\\\"\\r\\n                            (actionRetour)=\\\"checkUniciteNomPrenom()\\\"></p-input>\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"prenom\\\" name=\\\"prenom\\\" [(ngModel)]=\\\"detail.prenom\\\" class=\\\"form-control\\\" #prenom=\\\"ngModel\\\" maxlength=\\\"50\\\"\\r\\n                            (change)=\\\"checkUniciteNomPrenom()\\\">-->\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"nomPrenomSimilaireIdList != null && nomPrenomSimilaireIdList.length >0\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <div class=\\\"alert alert-danger\\\">\\r\\n                            Le nom et le prénom saisies existent déjà.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                            <br> Vous pouvez accéder à la fichie existante en cliquant içi\\r\\n                            <a routerLink=\\\"/personneDetail/{{nomPrenomSimilaireIdList[0].id}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">\\r\\n                                <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder à la personne avec le même nom et prénom\\\"></i>\\r\\n                            </a>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Surnom\\\" forLabel=\\\"sunrom\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siSurnomValid\\\" [(valueCheckBox)]=\\\"detail.siSurnomValid\\\"\\r\\n                            (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"text\\\" id=\\\"surnom\\\" [(value)]=\\\"detail.surnom\\\" [siInput]=\\\"getSiInputMode(detail.siSurnomValid)\\\" [siRequired]=\\\"detail.nom==null || detail.nom.length==0\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siSurnomValid\\\"></p-input>\\r\\n                        <!--<input type=\\\"text\\\" id=\\\"prenom\\\" name=\\\"prenom\\\" [(ngModel)]=\\\"detail.prenom\\\" class=\\\"form-control\\\" #prenom=\\\"ngModel\\\" maxlength=\\\"50\\\"\\r\\n                            (change)=\\\"checkUniciteNomPrenom()\\\">-->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Variantes du nom\\\" forLabel=\\\"autreNomVariante\\\" siAllLigne=\\\"true\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siVarianteAllValid\\\" [(valueCheckBox)]=\\\"detail.siVarianteAllValid\\\" (actionRetour)=\\\"changePersonneValidAll(true)\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div *ngFor=\\\"let autresNoms of detail.autreNomVariante\\\">\\r\\n                    <div class=\\\"tableGroupe\\\" (change)=\\\"autresNoms.siChange=true\\\" [hidden]=\\\"autresNoms.siDelete\\\">\\r\\n\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-12 marginCheckBoxValidation2\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"autresNomsSiValid{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.siValide\\\"\\r\\n                                    name=\\\"autresNomsSiValid{{autresNoms.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomBlockValidAll(autresNoms,true)\\\">\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                            <br>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"autresNomsSiNomValid{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.siNomValide\\\"\\r\\n                                    name=\\\"autresNomsSiNomValid{{autresNoms.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(autresNoms,true)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-input type=\\\"text\\\" id=\\\"nomVariante{{autresNoms.autreNomId}}\\\" [(value)]=\\\"autresNoms.nom\\\" [siInput]=\\\"getSiInputMode(autresNoms.siNomValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siNomValide\\\"></p-input>\\r\\n\\r\\n                                <!--\\r\\n                                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nomVariante{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.nom\\\" name=\\\"nomVariante{{autresNoms.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\">-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"autresNoms.siDelete=true;siSubmit=false\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-10\\\">\\r\\n                                <p-input type=\\\"text\\\" id=\\\"nomVariante{{autresNoms.autreNomId}}\\\" [(value)]=\\\"autresNoms.nom\\\" [siInput]=\\\"getSiInputMode(autresNoms.siNomValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siNomValide\\\"></p-input>\\r\\n                                <!--<input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nomVariante{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.nom\\\" name=\\\"nomVariante{{autresNoms.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\">-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"autresNoms.siDelete=true;siSubmit=false\\\"\\r\\n                                    *ngIf=\\\"getSiInputMode(autresNoms.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-11\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Variante utilisée dans le groupe</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Variante utilisée dans le groupe</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"autresNomsSiGroupeValid{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.siGroupeValide\\\"\\r\\n                                    name=\\\"autresNomsSiGroupeValid{{autresNoms.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(autresNoms,true)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"autresNoms.groupeLibelle\\\" [(valueId)]=\\\"autresNoms.groupeId\\\" id=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\"\\r\\n                                    (actionRetour)=\\\"autresNoms.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siGroupeValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(autresNoms.siGroupeValide)\\\" (actionRetourSiInconnu)=\\\"autresNoms.siGroupeInconnu=$event\\\"\\r\\n                                    typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n\\r\\n\\r\\n                                <!--\\r\\n                                <input class=\\\"form-control\\\" type=\\\"text\\\" id=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.groupeLibelle\\\"\\r\\n                                    name=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\" #nom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'autres'+autresNoms.autreNomId+'List'\\\"\\r\\n                                    (change)=\\\"changeNomGroupeVariante(autresNoms)\\\" (keyup)=\\\"changeNomGroupeVarianteList(autresNoms)\\\">\\r\\n                                <datalist id=\\\"autres{{autresNoms.autreNomId}}List\\\">\\r\\n                                    <select class=\\\"form-control\\\" id=\\\"nomVarianteGroupeSelect{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.groupeLibelle\\\"\\r\\n                                        name=\\\"nomVarianteGroupeSelect{{autresNoms.autreNomId}}\\\" #roleListb=\\\"ngModel\\\">\\r\\n                                    <option [value]=\\\"\\\"></option>\\r\\n                                    <option  *ngFor=\\\"let g of autresNoms.groupeList\\\" [value]=\\\"g.libelle\\\">\\r\\n                                </select>\\r\\n                                </datalist>\\r\\n                                -->\\r\\n                            </div>\\r\\n\\r\\n\\r\\n                            <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"autresNoms.groupeLibelle\\\" [(valueId)]=\\\"autresNoms.groupeId\\\" id=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\"\\r\\n                                    (actionRetour)=\\\"autresNoms.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siGroupeValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(autresNoms.siGroupeValide)\\\" (actionRetourSiInconnu)=\\\"autresNoms.siGroupeInconnu=$event\\\"\\r\\n                                    typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n                                <!--\\r\\n                                <input class=\\\"form-control\\\" type=\\\"text\\\" id=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.groupeLibelle\\\"\\r\\n                                    name=\\\"nomVarianteGroupe{{autresNoms.autreNomId}}\\\" #nom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'autres'+autresNoms.autreNomId+'List'\\\"\\r\\n                                    (change)=\\\"changeNomGroupeVariante(autresNoms)\\\" (keyup)=\\\"changeNomGroupeVarianteList(autresNoms)\\\">\\r\\n                                <datalist id=\\\"autres{{autresNoms.autreNomId}}List\\\">\\r\\n                                    <select class=\\\"form-control\\\" id=\\\"nomVarianteGroupeSelect{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.groupeLibelle\\\"\\r\\n                                        name=\\\"nomVarianteGroupeSelect{{autresNoms.autreNomId}}\\\" #roleListb=\\\"ngModel\\\">\\r\\n                                    <option [value]=\\\"\\\"></option>\\r\\n                                    <option  *ngFor=\\\"let g of autresNoms.groupeList\\\" [value]=\\\"g.libelle\\\">\\r\\n                                </select>\\r\\n                                </datalist>\\r\\n                                -->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"!autresNoms.siGroupeInconnu || autresNoms.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Groupe inconnue : si aucune propostion de groupe correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                        <p-create-groupe-simple [(value)]=\\\"autresNoms.groupeLibelle\\\" [siAffiche]=\\\"autresNoms.siGroupeInconnu && !autresNoms.siDelete\\\"\\r\\n                            id=\\\"nomVariante2Groupe{{autresNoms.autreNomId}}\\\" (actionRetour)=\\\"autresNoms.groupeId=$event;autresNoms.siGroupeInconnu=false;siSubmit=false\\\">\\r\\n                        </p-create-groupe-simple>\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-11\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Contexte</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Contexte</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"autresNomsSiContexteValide{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.siContexteValide\\\"\\r\\n                                    name=\\\"autresNomsSiContexteValide{{autresNoms.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(autresNoms,true)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <p-input type=\\\"textarea\\\" id=\\\"nomVarianteGroupeContexteSiValid{{autresNoms.autreNomId}}\\\" [(value)]=\\\"autresNoms.contexte\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siContexteValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(autresNoms.siContexteValide)\\\"></p-input>\\r\\n                                <!--<textarea class=\\\"form-control\\\" id=\\\"nomVarianteGroupeContexteSiValid{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.contexte\\\"\\r\\n                                    name=\\\"nomVarianteGroupeContexteSiValid{{autresNoms.autreNomId}}\\\" #contexte=\\\"ngModel\\\"></textarea>-->\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <p-input type=\\\"textarea\\\" id=\\\"nomVarianteGroupeContexteSiValid{{autresNoms.autreNomId}}\\\" [(value)]=\\\"autresNoms.contexte\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!autresNoms.siContexteValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(autresNoms.siContexteValide)\\\"></p-input>\\r\\n                                <!--\\r\\n                                <textarea class=\\\"form-control\\\" id=\\\"nomVarianteGroupeContexte{{autresNoms.autreNomId}}\\\" [(ngModel)]=\\\"autresNoms.contexte\\\"\\r\\n                                    name=\\\"nomVarianteGroupeContexte{{autresNoms.autreNomId}}\\\" #contexte=\\\"ngModel\\\"></textarea>-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <br>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addNomVariante();siSubmit=false\\\" title=\\\"Ajouter\\\" *ngIf=\\\"getSiInputMode(detail.siVarianteAllValid)\\\">\\r\\n                        </i>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Surnom(s)\\\" forLabel=\\\"autreNomSurnoms\\\" siAllLigne=\\\"true\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siSurnomAllValid\\\"\\r\\n                    [(valueCheckBox)]=\\\"detail.siSurnomAllValid\\\" (actionRetour)=\\\"changePersonneValidAll(false)\\\">\\r\\n                </p-label>\\r\\n                <div *ngFor=\\\"let surnom of detail.autreNomSurnoms\\\">\\r\\n                    <div class=\\\"tableGroupe\\\" (change)=\\\"surnom.siChange=true\\\" [hidden]=\\\"surnom.siDelete\\\">\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-12 marginCheckBoxValidation2\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"surnomsSiValid{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.siValide\\\" name=\\\"surnomsSiValid{{surnom.autreNomId}}\\\"\\r\\n                                    #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomBlockValidAll(surnom,false)\\\">\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                            <br>\\r\\n                        </div>\\r\\n\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"surnomSiNomValid{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.siNomValide\\\" name=\\\"surnomSiNomValid{{surnom.autreNomId}}\\\"\\r\\n                                    #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(surnom,false)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-input type=\\\"text\\\" id=\\\"surnomVariante{{surnom.autreNomId}}\\\" [(value)]=\\\"surnom.nom\\\" [siInput]=\\\"getSiInputMode(surnom.siNomValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siNomValide\\\"></p-input>\\r\\n                                <!--<input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"surnomVariante{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.nom\\\" name=\\\"surnomVariante{{surnom.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\">-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"surnom.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(surnom.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-10\\\">\\r\\n                                <p-input type=\\\"text\\\" id=\\\"surnomNom{{surnom.autreNomId}}\\\" [(value)]=\\\"surnom.nom\\\" [siInput]=\\\"getSiInputMode(surnom.siNomValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siNomValide\\\"></p-input>\\r\\n                                <!--<input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"surnomNom{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.nom\\\" name=\\\"surnomNom{{surnom.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\">-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"surnom.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(surnom.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-11\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Variante utilisée dans le groupe</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Variante utilisée dans le groupe</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"surnomSiGroupeValid{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.siGroupeValide\\\"\\r\\n                                    name=\\\"surnomSiGroupeValid{{surnom.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(surnom,false)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"surnom.groupeLibelle\\\" [(valueId)]=\\\"surnom.groupeId\\\" id=\\\"surnomGroupe{{surnom.autreNomId}}\\\" (actionRetour)=\\\"surnom.siChange=true\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siGroupeValide\\\" [siInput]=\\\"getSiInputMode(surnom.siGroupeValide)\\\"\\r\\n                                    (actionRetourSiInconnu)=\\\"surnom.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n                                <!--\\r\\n                                <input class=\\\"form-control\\\" type=\\\"text\\\" id=\\\"surnomGroupe{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.groupeLibelle\\\" name=\\\"surnomGroupe{{surnom.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'surnom'+surnom.autreNomId+'List'\\\" (change)=\\\"changeNomGroupeVariante(surnom)\\\"\\r\\n                                    (keyup)=\\\"changeNomGroupeVarianteList(surnom)\\\">\\r\\n                                <datalist id=\\\"surnom{{surnom.autreNomId}}List\\\">\\r\\n                                    <select class=\\\"form-control\\\" id=\\\"surnomGroupeSelect{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.groupeLibelle\\\" name=\\\"surnomGroupeSelect{{surnom.autreNomId}}\\\"\\r\\n                                        #roleListb=\\\"ngModel\\\">\\r\\n                                    <option [value]=\\\"\\\"></option>\\r\\n                                    <option  *ngFor=\\\"let g of surnom.groupeList\\\" [value]=\\\"g.libelle\\\">\\r\\n                                    \\r\\n                                </select>\\r\\n                                </datalist>\\r\\n                                -->\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"surnom.groupeLibelle\\\" [(valueId)]=\\\"surnom.groupeId\\\" id=\\\"surnomGroupe{{surnom.autreNomId}}\\\" (actionRetour)=\\\"surnom.siChange=true\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siGroupeValide\\\" [siInput]=\\\"getSiInputMode(surnom.siGroupeValide)\\\"\\r\\n                                    (actionRetourSiInconnu)=\\\"surnom.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n                                <!--\\r\\n                                <input class=\\\"form-control\\\" type=\\\"text\\\" id=\\\"surnomGroupe{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.groupeLibelle\\\" name=\\\"surnomGroupe{{surnom.autreNomId}}\\\"\\r\\n                                    #nom=\\\"ngModel\\\" maxlength=\\\"50\\\" [attr.list]=\\\"'surnom'+surnom.autreNomId+'List'\\\" (change)=\\\"changeNomGroupeVariante(surnom)\\\"\\r\\n                                    (keyup)=\\\"changeNomGroupeVarianteList(surnom)\\\">\\r\\n                                <datalist id=\\\"surnom{{surnom.autreNomId}}List\\\">\\r\\n                                    <select class=\\\"form-control\\\" id=\\\"surnomGroupeSelect{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.groupeLibelle\\\" name=\\\"surnomGroupeSelect{{surnom.autreNomId}}\\\"\\r\\n                                        #roleListb=\\\"ngModel\\\">\\r\\n                                    <option [value]=\\\"\\\"></option>\\r\\n                                    <option  *ngFor=\\\"let g of surnom.groupeList\\\" [value]=\\\"g.libelle\\\">\\r\\n                                    \\r\\n                                </select>\\r\\n                                </datalist>\\r\\n                                -->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"!surnom.siGroupeInconnu || surnom.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Groupe inconnue : si aucune propostion de groupe correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                        <p-create-groupe-simple [(value)]=\\\"surnom.groupeLibelle\\\" [siAffiche]=\\\"surnom.siGroupeInconnu && !surnom.siDelete\\\" id=\\\"surnomGroupe2Groupe{{surnom.autreNomId}}\\\"\\r\\n                            (actionRetour)=\\\"surnom.groupeId=$event;surnom.siGroupeInconnu=false;siSubmit=false\\\">\\r\\n                        </p-create-groupe-simple>\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-11\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Contexte</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <label for=\\\"personFirstname\\\" class=\\\"label1 labelSousLabel\\\">Contexte</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1 marginCheckBoxValidation2\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"surnomSiContexteValide{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.siContexteValide\\\"\\r\\n                                    name=\\\"surnomSiContexteValide{{surnom.autreNomId}}\\\" #siPrenomValid=\\\"ngModel\\\" (change)=\\\"changePersonneAutreNomValidSingle(surnom,false)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <p-input type=\\\"textarea\\\" id=\\\"surnomContexte{{surnom.autreNomId}}\\\" [(value)]=\\\"surnom.contexte\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siContexteValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(surnom.siContexteValide)\\\"></p-input>\\r\\n                                <!--<textarea class=\\\"form-control\\\" id=\\\"surnomContexte{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.contexte\\\" name=\\\"surnomContexte{{surnom.autreNomId}}\\\"\\r\\n                                    #contexte=\\\"ngModel\\\"></textarea>-->\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                                <p-input type=\\\"textarea\\\" id=\\\"surnomContexte{{surnom.autreNomId}}\\\" [(value)]=\\\"surnom.contexte\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!surnom.siContexteValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(surnom.siContexteValide)\\\"></p-input>\\r\\n                                <!--<textarea class=\\\"form-control\\\" id=\\\"surnomContexte{{surnom.autreNomId}}\\\" [(ngModel)]=\\\"surnom.contexte\\\" name=\\\"surnomContexte{{surnom.autreNomId}}\\\"\\r\\n                                    #contexte=\\\"ngModel\\\"></textarea>-->\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <br>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Ajouter\\\" (click)=\\\"addSurnom();siSubmit=false\\\" *ngIf=\\\"getSiInputMode(detail.siSurnomAllValid)\\\">\\r\\n                        </i>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <a routerLink=\\\"/groupesList\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button\\\" class=\\\"btn pull-right button-creer\\\" >Accéder à la liste des groupes</button></a>\\r\\n                    </div>\\r\\n                </div>-->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Date de naissance précise\\\" forLabel=\\\"dateNaissance\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateNaissancePreciseValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateNaissancePreciseValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7  form-inline\\\">\\r\\n                        <p-input type=\\\"date2\\\" id=\\\"dateNaissance\\\" [(value)]=\\\"detail.dateNaissance\\\" [siInput]=\\\"getSiInputMode(detail.siDateNaissancePreciseValid)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateNaissancePreciseValid\\\"></p-input>\\r\\n                        <!--my-date-picker name=\\\"dateNaissance\\\" id=\\\"dateNaissance\\\" [(ngModel)]=\\\"detail.dateNaissance2\\\" (dateChanged)=\\\"onDateChanged($event,'NAISSANCE');siSubmit=false\\\"\\r\\n                            [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n                <div class=\\\"tiretPetit\\\" [hidden]=\\\"detail.dateNaissance != null\\\">\\r\\n                    <span>_______________ou_______________</span>\\r\\n                </div>\\r\\n                <div class=\\\"tableGroupe\\\" [hidden]=\\\"detail.dateNaissance != null\\\">\\r\\n                    <p-label valueLabel=\\\"Date de naissance incertaine\\\" classCheckBox=\\\"marginCheckBoxValidation2\\\" siAllLigne=\\\"true\\\" forLabel=\\\"siDateNaissanceIncertaineValid\\\"\\r\\n                        [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateNaissanceIncertaineValid\\\" [(valueCheckBox)]=\\\"detail.siDateNaissanceIncertaineValid\\\"\\r\\n                        (actionRetour)=\\\"changeDateNaissanceMortIncertaineValidAll(true)\\\">\\r\\n                    </p-label>\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-3\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siDateNaissanceIncertaineDebValid\\\" [(ngModel)]=\\\"detail.siDateNaissanceIncertaineDebValid\\\"\\r\\n                                name=\\\"siDateNaissanceIncertaineDebValid\\\" #siDateNaissancePreciseValid=\\\"ngModel\\\" (change)=\\\"changeDateNaissanceMortIncertaineValidUnit(true)\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">Entre</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                            <p-input type=\\\"date2\\\" id=\\\"dateNaissanceIncertaineDeb\\\" [(value)]=\\\"detail.dateNaissanceIncertaineDeb\\\" [siInput]=\\\"getSiInputMode(detail.siDateNaissanceIncertaineDebValid)\\\"\\r\\n                                [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateNaissanceIncertaineDebValid\\\"></p-input>\\r\\n                            <!--\\r\\n                            <my-date-picker name=\\\"dateNaissanceIncertaineDeb\\\" id=\\\"dateNaissanceIncertaineDeb\\\" [(ngModel)]=\\\"detail.dateNaissanceIncertaineDeb2\\\"\\r\\n                                (dateChanged)=\\\"onDateChanged($event,'NAISSANCE_INCERTAINE_DEB');siSubmit=false\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>\\r\\n                                -->\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-3\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siDateNaissanceIncertaineFinValid\\\" [(ngModel)]=\\\"detail.siDateNaissanceIncertaineFinValid\\\"\\r\\n                                name=\\\"siDateNaissanceIncertaineFinValid\\\" #siDateNaissancePreciseValid=\\\"ngModel\\\" (change)=\\\"changeDateNaissanceMortIncertaineValidUnit(true)\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">Et</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                            <p-input type=\\\"date2\\\" id=\\\"dateNaissanceIncertaineFin\\\" [(value)]=\\\"detail.dateNaissanceIncertaineFin\\\" [siInput]=\\\"getSiInputMode(detail.siDateNaissanceIncertaineFinValid)\\\"\\r\\n                                [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateNaissanceIncertaineFinValid\\\"></p-input>\\r\\n                            <!--\\r\\n                            <my-date-picker name=\\\"dateNaissanceIncertaineFin\\\" id=\\\"dateNaissanceIncertaineFin\\\" [(ngModel)]=\\\"detail.dateNaissanceIncertaineFin2\\\"\\r\\n                                (dateChanged)=\\\"onDateChanged($event,'NAISSANCE_INCERTAINE_FIN');siSubmit=false\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>\\r\\n                                -->\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\"></div>\\r\\n                    </div>\\r\\n                    <div [hidden]=\\\"!(detail.dateNaissanceIncertaineDeb!=null && detail.dateNaissanceIncertaineFin!=null && detail.dateNaissanceIncertaineDeb.length>0 && detail.dateNaissanceIncertaineFin.length>0 && detail.dateNaissanceIncertaineDeb>detail.dateNaissanceIncertaineFin)\\\"\\r\\n                        class=\\\"alert alert-danger\\\">\\r\\n                        La date de début doit être après la date de fin\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\"></div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Lieu de naissance\\\" forLabel=\\\"lieuNaissance\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siLieuNaissanceValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siLieuNaissanceValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <!--\\r\\n                        <p-auto-complete [(value)]=\\\"detail.lieuNaissanceLibelle\\\" [(valueId)]=\\\"detail.lieuNaissanceId\\\" id=\\\"lieuNaissance\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuNaissanceValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siLieuNaissanceValid)\\\" typeObject=\\\"LIEU\\\" (actionRetourSiInconnu)=\\\"siLieuNaissanceInconu=$event\\\">\\r\\n                        </p-auto-complete>-->\\r\\n                        <p-auto-complete-lieu-api [(value)]=\\\"detail.lieuNaissanceLibelle\\\" [(valueId)]=\\\"detail.lieuNaissanceId\\\" [(codeInsee)]=\\\"detail.lieuNaissanceCodeInsee\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuNaissanceValid\\\" [siInput]=\\\"getSiInputMode(detail.siLieuNaissanceValid)\\\"\\r\\n                            id=\\\"lieuNaissance\\\">\\r\\n                        </p-auto-complete-lieu-api>\\r\\n                        <!--\\r\\n                        <input type=\\\"text\\\" id=\\\"lieuNaissance\\\" name=\\\"lieuNaissance\\\" [(ngModel)]=\\\"detail.lieuNaissanceLibelle\\\" class=\\\"form-control\\\"\\r\\n                            #lieuNaissanceLibelle=\\\"ngModel\\\" list=\\\"lieuNaissanceListId\\\" (change)=\\\"changeLieuNaissance()\\\">\\r\\n                        <datalist id=\\\"lieuNaissanceListId\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"lieuNaissanceSelect\\\" [(ngModel)]=\\\"detail.lieuNaissanceLibelle\\\" name=\\\"lieuNaissanceSelect\\\"\\r\\n                                #lieuNaissanceSelectId=\\\"ngModel\\\" (change)=\\\"changeLieuNaissance()\\\">\\r\\n                                <option [value]=\\\"\\\"></option>\\r\\n                                <option *ngFor=\\\"let l of lieuList\\\" [value]=\\\"l.lieuLibelle\\\">\\r\\n                            </option>\\r\\n                        </select>\\r\\n                        </datalist>\\r\\n                        -->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div *ngIf=\\\"siValidationPageMode\\\" class=\\\"col-lg-3  marginCheckBoxValidation1\\\"></div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-label valueLabel=\\\"Code INSEE lieu de naissance\\\" forLabel=\\\"lieuNaissanceCodeInsee\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"number\\\" id=\\\"lieuNaissanceCodeInsee\\\" [(value)]=\\\"detail.lieuNaissanceCodeInsee\\\" [siInput]=\\\"getSiInputMode(detail.siLieuNaissanceValid)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuNaissanceValid\\\" (actionRetour2)=\\\"detail.lieuNaissanceId=null\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n                <!--<p-create-lieu-simple [(value)]=\\\"detail.lieuNaissanceLibelle\\\" [siAffiche]=\\\"siLieuNaissanceInconu\\\" id=\\\"lieuNaissanceCreateSimple\\\"\\r\\n                    (actionRetour)=\\\"detail.lieuNaissanceId=$event;siLieuNaissanceInconu=false\\\">\\r\\n                </p-create-lieu-simple>-->\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\"></div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Date de décès précise\\\" forLabel=\\\"dateMort\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateMortPreciseValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siDateMortPreciseValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                        <p-input type=\\\"date2\\\" id=\\\"dateMort\\\" [(value)]=\\\"detail.dateMort\\\" [siInput]=\\\"getSiInputMode(detail.siDateMortPreciseValid)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateMortPreciseValid\\\"></p-input>\\r\\n                        <!--<my-date-picker name=\\\"dateMort\\\" id=\\\"dateMort\\\" [(ngModel)]=\\\"detail.dateMort2\\\" (dateChanged)=\\\"onDateChanged($event,'MORT');siSubmit=false\\\"\\r\\n                            [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\"></div>\\r\\n                </div>\\r\\n                <div [hidden]=\\\"!(detail.dateNaissance!=null && detail.dateMort!=null && detail.dateNaissance.length>0 && detail.dateMort.length>0 && detail.dateNaissance>detail.dateMort)\\\"\\r\\n                    class=\\\"alert alert-danger\\\">\\r\\n                    La date de début doit être après la date de fin\\r\\n                </div>\\r\\n                <div class=\\\"tiretPetit\\\" [hidden]=\\\"detail.dateMort != null\\\">\\r\\n                    <span>_______________ou_______________</span>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"tableGroupe\\\" [hidden]=\\\"detail.dateMort != null\\\">\\r\\n                    <p-label valueLabel=\\\"Date de décès incertaine\\\" classCheckBox=\\\"marginCheckBoxValidation2\\\" siAllLigne=\\\"true\\\" forLabel=\\\"siDateMortIncertaineValid\\\"\\r\\n                        [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateMortIncertaineValid\\\" [(valueCheckBox)]=\\\"detail.siDateMortIncertaineValid\\\"\\r\\n                        (actionRetour)=\\\"changeDateNaissanceMortIncertaineValidAll(false)\\\">\\r\\n                    </p-label>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-3\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siDateMortIncertaineDebValid\\\" [(ngModel)]=\\\"detail.siDateMortIncertaineDebValid\\\"\\r\\n                                name=\\\"siDateMortIncertaineDebValid\\\" #siDateMortIncertaineDebValid=\\\"ngModel\\\" (change)=\\\"changeDateNaissanceMortIncertaineValidUnit(false)\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">Entre</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                            <p-input type=\\\"date2\\\" id=\\\"dateMortIncertaineDeb\\\" [(value)]=\\\"detail.dateMortIncertaineDeb\\\" [siInput]=\\\"getSiInputMode(detail.siDateMortIncertaineDebValid)\\\"\\r\\n                                [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateMortIncertaineDebValid\\\"></p-input>\\r\\n                            <!--<my-date-picker name=\\\"dateMortIncertaineDeb\\\" id=\\\"dateMortIncertaineDeb\\\" [(ngModel)]=\\\"detail.dateMortIncertaineDeb2\\\" (dateChanged)=\\\"onDateChanged($event,'NAISSANCE_MORT_DEB');siSubmit=false\\\"\\r\\n                                [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-3\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1 marginCheckBoxValidation1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siDateMortIncertaineFinValid\\\" [(ngModel)]=\\\"detail.siDateMortIncertaineFinValid\\\"\\r\\n                                name=\\\"siDateMortIncertaineFinValid\\\" #siDateMortIncertaineFinValid=\\\"ngModel\\\" (change)=\\\"changeDateNaissanceMortIncertaineValidUnit(false)\\\">\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">Et</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n                            <p-input type=\\\"date2\\\" id=\\\"dateMortIncertaineFin\\\" [(value)]=\\\"detail.dateMortIncertaineFin\\\" [siInput]=\\\"getSiInputMode(detail.siDateMortIncertaineFinValid)\\\"\\r\\n                                [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateMortIncertaineFinValid\\\"></p-input>\\r\\n                            <!--<my-date-picker name=\\\"dateMortIncertaineFin\\\" id=\\\"dateMortIncertaineFin\\\" [(ngModel)]=\\\"detail.dateMortIncertaineFin2\\\" (dateChanged)=\\\"onDateChanged($event,'NAISSANCE_MORT_FIN');siSubmit=false\\\"\\r\\n                                [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\"></div>\\r\\n                    </div>\\r\\n                    <div [hidden]=\\\"!(detail.dateMortIncertaineDeb!=null && detail.dateMortIncertaineFin!=null && detail.dateMortIncertaineDeb.length>0 && detail.dateMortIncertaineFin.length>0 && detail.dateMortIncertaineDeb>detail.dateMortIncertaineFin)\\\"\\r\\n                        class=\\\"alert alert-danger\\\">\\r\\n                        La date de début doit être après la date de fin\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\"></div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <p-label valueLabel=\\\"Lieu de décès\\\" forLabel=\\\"lieuMort\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siLieuMortValid\\\"\\r\\n                            [(valueCheckBox)]=\\\"detail.siLieuMortValid\\\" (actionRetour)=\\\"changeAllUnitValid(false)\\\">\\r\\n                        </p-label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-auto-complete-lieu-api [(value)]=\\\"detail.lieuMortLibelle\\\" [(valueId)]=\\\"detail.lieuMortId\\\" [(codeInsee)]=\\\"detail.lieuMortCodeInsee\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuMortValid\\\" [siInput]=\\\"getSiInputMode(detail.siLieuMortValid)\\\"\\r\\n                            id=\\\"siLieuMortValid\\\">\\r\\n                        </p-auto-complete-lieu-api>\\r\\n                        <!--<p-auto-complete [(value)]=\\\"detail.lieuMortLibelle\\\" [(valueId)]=\\\"detail.lieuMortId\\\" id=\\\"lieuMort\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuMortValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siLieuMortValid)\\\" typeObject=\\\"LIEU\\\" (actionRetourSiInconnu)=\\\"lieuMortCreateSimple=$event\\\">\\r\\n                        </p-auto-complete>-->\\r\\n                        <!--\\r\\n                        <input type=\\\"text\\\" id=\\\"lieuMort\\\" name=\\\"lieuMort\\\" [(ngModel)]=\\\"detail.lieuMortLibelle\\\" class=\\\"form-control\\\" #lieuMortLibelle=\\\"ngModel\\\"\\r\\n                            list=\\\"lieuMortListId\\\" (change)=\\\"changeLieuMort()\\\">\\r\\n                        <datalist id=\\\"lieuMortListId\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"lieuMortSelect\\\" [(ngModel)]=\\\"detail.lieuMortLibelle\\\" name=\\\"lieuMortSelect\\\" #lieuMortSelectId=\\\"ngModel\\\"\\r\\n                                (change)=\\\"changeLieuMort()\\\">\\r\\n                                <option [value]=\\\"\\\"></option>\\r\\n                                <option *ngFor=\\\"let l of lieuList\\\" [value]=\\\"l.lieuLibelle\\\">\\r\\n                            </option>\\r\\n                        </select>\\r\\n                        </datalist>\\r\\n                        -->\\r\\n\\r\\n                        <!--\\r\\n                    <select class=\\\"form-control\\\" id=\\\"lieuMortId\\\" \\r\\n                        [(ngModel)]=\\\"detail.lieuMortId\\\" name=\\\"lieuMortId\\\"\\r\\n                        #lieuMortId=\\\"ngModel\\\"  (change)=\\\"changeLieuMort()\\\"  >\\r\\n                        <option [value]=\\\"\\\"></option>\\r\\n                        <option *ngFor=\\\"let l of lieuList\\\" [value]=\\\"l.lieuId\\\">\\r\\n                            <span  *ngIf=\\\"l.paysId!=null\\\">{{l.lieuLibelle}} ({{l.paysLibelle}})</span>\\r\\n                            <span  *ngIf=\\\"l.paysId==null\\\">{{l.lieuLibelle}}</span>\\r\\n                        </option>\\r\\n                    </select>-->\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div *ngIf=\\\"siValidationPageMode\\\" class=\\\"col-lg-3  marginCheckBoxValidation1\\\"></div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-label valueLabel=\\\"Code INSEE lieu de décès\\\" forLabel=\\\"lieuMortCodeInsee\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <p-input type=\\\"number\\\" id=\\\"lieuMortCodeInsee\\\" [(value)]=\\\"detail.lieuMortCodeInsee\\\" [siInput]=\\\"getSiInputMode(detail.siLieuMortValid)\\\"\\r\\n                            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLieuMortValid\\\" (actionRetour2)=\\\"detail.lieuMortId=null\\\"></p-input>\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <!--<p-create-lieu-simple [(value)]=\\\"detail.lieuMortLibelle\\\" [siAffiche]=\\\"lieuMortCreateSimple\\\" id=\\\"siLieuMortCreateSimple\\\" (actionRetour)=\\\"detail.lieuMortId=$event;lieuMortCreateSimple=false\\\">\\r\\n                </p-create-lieu-simple>-->\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\"></div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Fonction(s)\\\" siAllLigne=\\\"true\\\" forLabel=\\\"role\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siRoleAllValid\\\"\\r\\n                    [(valueCheckBox)]=\\\"detail.siRoleAllValid\\\" (actionRetour)=\\\"changeRoleValidAll()\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div *ngFor=\\\"let role of detail.roleList;let last = last\\\">\\r\\n\\r\\n\\r\\n                    <div (change)=\\\"role.siChange=true\\\" *ngIf=\\\"!role.siDelete\\\" class=\\\"tableGroupe\\\">\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <p-label siAllLigne=\\\"true\\\" forLabel=\\\"role2\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siValide{{role.groupeArtisteRoleId}}\\\"\\r\\n                                    [(valueCheckBox)]=\\\"role.siValide\\\" (actionRetour)=\\\"changeRoleBlockValidAll(role)\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siTypeRoleIdValide{{role.id}}\\\" [(ngModel)]=\\\"role.siTypeRoleIdValide\\\" name=\\\"siTypeRoleIdValide{{role.id}}\\\"\\r\\n                                    #siTypeRoleIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n                            \\r\\n                            <div class=\\\"col-lg-9  marginCheckBoxValidation1\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"role.typeRoleLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siTypeRoleIdValide\\\"\\r\\n                                    [(valueId)]=\\\"role.typeRoleId\\\" [siInput]=\\\"getSiInputMode(role.siTypeRoleIdValide)\\\" id=\\\"roleListRole{{role.groupeArtisteRoleId}}\\\"\\r\\n                                    (actionRetour)=\\\"role.siChange=true\\\" [siRequired]=\\\"!role.siDelete\\\" (actionRetourSiInconnu)=\\\"role.siRoleInconnu=$event\\\"\\r\\n                                    typeObject=\\\"ROLE\\\">\\r\\n                                </p-auto-complete>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"role.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(role.siValide)\\\"></i>\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <p-create-role-simple [(value)]=\\\"role.typeRoleLibelle\\\" [siAffiche]=\\\"role.siRoleInconnu && !role.siDelete\\\" id=\\\"auteurRole2Nom{{role.groupeArtisteRoleId}}\\\"\\r\\n                            (actionRetour)=\\\"role.typeRoleId=$event;role.siRoleInconnu=false\\\">\\r\\n                        </p-create-role-simple>\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"groupe\\\" class=\\\"label1 labelSousLabel\\\">Pour le groupe</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siGroupeIdValide{{role.groupeArtisteRoleId}}\\\" [(ngModel)]=\\\"role.siGroupeIdValide\\\"\\r\\n                                    name=\\\"siGroupeIdValide{{role.groupeArtisteRoleId}}\\\" #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n\\r\\n                            \\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"role.groupeNom\\\" [(valueId)]=\\\"role.groupeId\\\" id=\\\"roleListGroupe{{role.groupeArtisteRoleId}}\\\" (actionRetour)=\\\"role.siChange=true\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siGroupeIdValide\\\" [siInput]=\\\"getSiInputMode(role.siGroupeIdValide)\\\"\\r\\n                                    (actionRetourSiInconnu)=\\\"role.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <p-create-groupe-simple [(value)]=\\\"role.groupeNom\\\" [siAffiche]=\\\"role.siGroupeInconnu && !role.siDelete\\\" id=\\\"role2ListGroupe{{role.groupeArtisteRoleId}}\\\"\\r\\n                            (actionRetour)=\\\"role.groupeId=$event;role.siGroupeInconnu=false;siSubmit=false\\\">\\r\\n                        </p-create-groupe-simple>\\r\\n\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"groupe\\\" class=\\\"label1 labelSousLabel\\\">Période</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1 labelSousLabel\\\">Du</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siPeriodeDebutValide{{role.groupeArtisteRoleId}}\\\" [(ngModel)]=\\\"role.siDateDebutValide\\\"\\r\\n                                    name=\\\"siPeriodeDebutValide{{role.groupeArtisteRoleId}}\\\" #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-9 form-inline\\\">\\r\\n                                <p-input type=\\\"date2\\\" id=\\\"rolePeriode{{role.groupeArtisteRoleId}}Debut\\\" [(value)]=\\\"role.dateDebut\\\" [siInput]=\\\"getSiInputMode(role.siDateDebutValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateDebutValide\\\" (actionRetour)=\\\"role.siChange=true\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"clo-lg-1\\\"></div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1 labelSousLabel\\\">Au</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siPeriodeFinValide{{role.groupeArtisteRoleId}}\\\" [(ngModel)]=\\\"role.siDateFinValide\\\"\\r\\n                                    name=\\\"siPeriodeFinValide{{role.groupeArtisteRoleId}}\\\" #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-9 form-inline\\\">\\r\\n                                <p-input type=\\\"date2\\\" id=\\\"rolePeriode{{role.groupeArtisteRoleId}}Fin\\\" [(value)]=\\\"role.dateFin\\\" [siInput]=\\\"getSiInputMode(role.siDateFinValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateFinValide\\\" (actionRetour)=\\\"role.siChange=true\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-10 alert alert-danger\\\" [hidden]=\\\"!(role.dateDebut!=null && role.dateFin!=null && role.dateDebut.length>0 && role.dateFin.length>0 && role.dateDebut>role.dateFin)\\\">\\r\\n                                La date de début doit être après la date de fin\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n\\r\\n                    </div>\\r\\n                    <br>\\r\\n\\r\\n\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Ajouter\\\" (click)=\\\"addRole();siSubmit=false\\\" *ngIf=\\\"getSiInputMode(detail.siRoleAllValid)\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <!--\\r\\n                <p-label valueLabel=\\\"Fonction(s)\\\" siAllLigne=\\\"true\\\" forLabel=\\\"role\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siRoleAllValid\\\"\\r\\n                    [(valueCheckBox)]=\\\"detail.siRoleAllValid\\\" (actionRetour)=\\\"changeRoleValidAll()\\\">\\r\\n                </p-label>\\r\\n\\r\\n                <div *ngFor=\\\"let role of detail.roleList;let last = last\\\" class=\\\"block1\\\">\\r\\n                    <div (change)=\\\"role.siChange=true\\\" [hidden]=\\\"role.siDelete\\\">\\r\\n                        <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <p-label siAllLigne=\\\"true\\\" forLabel=\\\"role2\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siValide{{role.id}}\\\" [(valueCheckBox)]=\\\"role.siValide\\\"\\r\\n                                    (actionRetour)=\\\"changeRoleBlockValidAll(role)\\\">\\r\\n                                </p-label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siTypeRoleIdValide{{role.id}}\\\" [(ngModel)]=\\\"role.siTypeRoleIdValide\\\" name=\\\"siTypeRoleIdValide{{role.id}}\\\"\\r\\n                                    #siTypeRoleIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\"></div>\\r\\n                            <div class=\\\"col-lg-9  marginCheckBoxValidation1\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"role.typeRoleLibelle\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siTypeRoleIdValide\\\"\\r\\n                                    [(valueId)]=\\\"role.typeRoleId\\\" [siInput]=\\\"getSiInputMode(role.siTypeRoleIdValide)\\\" id=\\\"roleListRole{{role.id}}\\\"\\r\\n                                    (actionRetour)=\\\"role.siChange=true\\\" [siRequired]=\\\"!role.siDelete\\\" (actionRetourSiInconnu)=\\\"role.siRoleInconnu=$event\\\"\\r\\n                                    typeObject=\\\"ROLE\\\">\\r\\n                                </p-auto-complete>\\r\\n                                \\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"role.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(role.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <p-create-role-simple [(value)]=\\\"role.typeRoleLibelle\\\" [siAffiche]=\\\"role.siRoleInconnu && !role.siDelete\\\" id=\\\"auteurRole2Nom{{role.id}}\\\"\\r\\n                            (actionRetour)=\\\"role.typeRoleId=$event;role.siRoleInconnu=false\\\">\\r\\n                        </p-create-role-simple>\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"groupe\\\" class=\\\"label1 labelSousLabel\\\">Pour le groupe</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siGroupeIdValide{{role.id}}\\\" [(ngModel)]=\\\"role.siGroupeIdValide\\\" name=\\\"siGroupeIdValide{{role.id}}\\\"\\r\\n                                    #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"!siValidationPageMode\\\"></div>\\r\\n                            <div class=\\\"col-lg-9\\\">\\r\\n                                <p-auto-complete [(value)]=\\\"role.groupeLibelle\\\" [(valueId)]=\\\"role.groupeId\\\" id=\\\"roleListGroupe{{role.id}}\\\" (actionRetour)=\\\"role.siChange=true\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siGroupeIdValide\\\" [siInput]=\\\"getSiInputMode(role.siGroupeIdValide)\\\"\\r\\n                                    (actionRetourSiInconnu)=\\\"role.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"> </p-auto-complete>\\r\\n                                \\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"!role.siGroupeInconnu || role.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Groupe inconnue : si aucune propostion de groupe correspondant à votre saisie n'apparait, veuillez en créer une.\\r\\n                            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                        </div>\\r\\n                        <p-create-groupe-simple [(value)]=\\\"role.groupeLibelle\\\" [siAffiche]=\\\"role.siGroupeInconnu && !role.siDelete\\\" id=\\\"role2ListGroupe{{role.id}}\\\"\\r\\n                            (actionRetour)=\\\"role.groupeId=$event;role.siGroupeInconnu=false;siSubmit=false\\\">\\r\\n                        </p-create-groupe-simple>\\r\\n\\r\\n\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"groupe\\\" class=\\\"label1 labelSousLabel\\\">Période</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1 labelSousLabel\\\">Du</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siPeriodeDebutValide{{role.id}}\\\" [(ngModel)]=\\\"role.siDateDebutValide\\\" name=\\\"siPeriodeDebutValide{{role.id}}\\\"\\r\\n                                    #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <p-input type=\\\"date\\\" id=\\\"rolePeriode{{role.id}}Debut\\\" [(value)]=\\\"role.dateDebut\\\" [siInput]=\\\"getSiInputMode(role.siDateDebutValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateDebutValide\\\" (actionRetour)=\\\"role.siChange=true\\\"></p-input>\\r\\n                                \\r\\n                            </div>\\r\\n\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <label for=\\\"personSurname\\\" class=\\\"label1 labelSousLabel\\\">au</label>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siPeriodeDebutValide{{role.id}}\\\" [(ngModel)]=\\\"role.siDateFinValide\\\" name=\\\"siPeriodeDebutValide{{role.id}}\\\"\\r\\n                                    #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeRoleValidUnit(role)\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <p-input type=\\\"date\\\" id=\\\"rolePeriode{{role.id}}Fin\\\" [(value)]=\\\"role.dateFin\\\" [siInput]=\\\"getSiInputMode(role.siDateFinValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!role.siDateFinValide\\\" (actionRetour)=\\\"role.siChange=true\\\"></p-input>\\r\\n                                \\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-10 alert alert-danger\\\" [hidden]=\\\"!(role.dateDebut!=null && role.dateFin!=null && role.dateDebut.length>0 && role.dateFin.length>0 && role.dateDebut>role.dateFin)\\\">\\r\\n                                La date de début doit être après la date de fin\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-2\\\">\\r\\n                            </div>\\r\\n                        </div>\\r\\n\\r\\n                        <div class=\\\"tiretPetit\\\">\\r\\n                            <span>______________________________</span>\\r\\n                        </div>\\r\\n                        <br>\\r\\n\\r\\n                    </div>\\r\\n\\r\\n\\r\\n                    \\r\\n\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Ajouter\\\" (click)=\\\"addRole();siSubmit=false\\\" *ngIf=\\\"getSiInputMode(detail.siRoleAllValid)\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n            -->\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <!--\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Liste des périodes d'activité</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div *ngFor=\\\"let periode of detail.periodeActivite\\\">\\r\\n                <div (change)=\\\"periode.siChange=true\\\" [hidden]=\\\"periode.siDelete\\\">\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">Du</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-4\\\">\\r\\n                            <my-date-picker name=\\\"periodeActivite{{periode.periodeId}}Debut\\\" id=\\\"periodeActivite{{periode.periodeId}}Debut\\\" [(ngModel)]=\\\"periode.dateDebut2\\\" \\r\\n                                (dateChanged)=\\\"onDateChangedPeriodeActivie($event,periode,true);siSubmit=false\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker> \\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-1\\\">\\r\\n                            <label for=\\\"personSurname\\\" class=\\\"label1\\\">au</label>\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-4\\\">\\r\\n                            <my-date-picker name=\\\"periodeActivite{{periode.periodeId}}Fin\\\" id=\\\"periodeActivite{{periode.periodeId}}Fin\\\" [(ngModel)]=\\\"periode.dateFin2\\\" \\r\\n                                (dateChanged)=\\\"onDateChangedPeriodeActivie($event,periode,false);siSubmit=false\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker> \\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-2\\\">\\r\\n                            <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"periode.siDelete=true;siSubmit=false\\\" title=\\\"Supprimer\\\" ></i>  \\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\" >\\r\\n                        <div class=\\\"col-lg-10 alert alert-danger\\\" [hidden]=\\\"!(periode.dateDebut!=null && periode.dateFin!=null && periode.dateDebut.length>0 && periode.dateFin.length>0 && periode.dateDebut>periode.dateFin)\\\">\\r\\n                            La date de début doit être après la date de fin\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-2\\\">\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addPeriodeActivite();siSubmit=false\\\" title=\\\"Ajouter\\\" style=\\\"padding-top: 10px\\\"></i>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\"><div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\"><hr></div></div>\\r\\n            <br>\\r\\n            -->\\r\\n\\r\\n                <p-label valueLabel=\\\"Lieu(x) d'activité\\\" siAllLigne=\\\"true\\\" forLabel=\\\"lieuActivite\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                    idCheckBox=\\\"siLieuActiviteAllValid\\\" [(valueCheckBox)]=\\\"detail.siLieuActiviteAllValid\\\" (actionRetour)=\\\"changeLieuActiviteValidAll()\\\">\\r\\n                </p-label>\\r\\n                <div *ngFor=\\\"let l of detail.lieuActivite\\\">\\r\\n                    <div (change)=\\\"l.siChange=true\\\" [hidden]=\\\"l.siDelete\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siLieuActiviteValide{{l.lieuActiviteId}}\\\" [(ngModel)]=\\\"l.siValide\\\" name=\\\"siLieuActiviteValide{{l.lieuActiviteId}}\\\"\\r\\n                                    #siGroupeIdValide=\\\"ngModel\\\" (change)=\\\"changeLieuActiviteValidUnit()\\\">\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\">\\r\\n                                <!--<p-auto-complete [(value)]=\\\"l.lieuLibelle\\\" [(valueId)]=\\\"l.lieuId\\\" id=\\\"lieuActivite{{l.lieuActiviteId}}\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!l.siValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(l.siValide)\\\" typeObject=\\\"LIEU\\\" (actionRetourSiInconnu)=\\\"l.siLieuInconu=$event\\\">\\r\\n                                </p-auto-complete>-->\\r\\n                                <p-auto-complete-lieu-api [(value)]=\\\"l.lieuLibelle\\\" [(valueId)]=\\\"l.lieuId\\\" [(codeInsee)]=\\\"l.codeInsee\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!l.siValide\\\"\\r\\n                                    [siInput]=\\\"getSiInputMode(l.siValide)\\\" id=\\\"lieuActivite{{l.lieuActiviteId}}\\\"></p-auto-complete-lieu-api>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-3\\\">\\r\\n                                <p-input type=\\\"number\\\" id=\\\"lieuActiviteInsee{{l.lieuActiviteId}}\\\" [(value)]=\\\"l.codeInsee\\\" [siInput]=\\\"getSiInputMode(l.siValide)\\\"\\r\\n                                    [siValidationAndNonValid]=\\\"siValidationPageMode&&!l.siValide\\\" (actionRetour2)=\\\"l.lieuId=null\\\"></p-input>\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-1\\\">\\r\\n                                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"l.siDelete=true;siSubmit=false\\\" *ngIf=\\\"getSiInputMode(l.siValide)\\\"></i>\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-4\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                            <div class=\\\"col-lg-3\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        <p-create-lieu-simple [(value)]=\\\"l.lieuLibelle\\\" [siAffiche]=\\\"l.siLieuInconu\\\" id=\\\"lieuCreateSimple{{l.lieuActiviteId}}\\\" (actionRetour)=\\\"l.lieuId=$event;l.siLieuInconu=false\\\">\\r\\n                        </p-create-lieu-simple>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addLieuActivite();siSubmit=false\\\" title=\\\"Ajouter\\\" *ngIf=\\\"getSiInputMode(detail.siLieuActiviteAllValid)\\\"></i>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <p-label valueLabel=\\\"Biographie\\\" siAllLigne=\\\"true\\\" forLabel=\\\"biographie\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siBiographieValid\\\"\\r\\n                    [(valueCheckBox)]=\\\"detail.siBiographieValid\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n                </p-label>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <p-input type=\\\"textarea\\\" id=\\\"biographie\\\" [(value)]=\\\"detail.biographie\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siBiographieValid\\\"\\r\\n                            [siInput]=\\\"getSiInputMode(detail.siBiographieValid)\\\"></p-input>\\r\\n                        <!--<textarea class=\\\"form-control\\\" id=\\\"biographie\\\" [(ngModel)]=\\\"detail.biographie\\\" name=\\\"biographie\\\" #biographie=\\\"ngModel\\\" rows=\\\"5\\\"\\r\\n                            style=\\\"margin-top: 10px\\\"></textarea>-->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                        <hr>\\r\\n                    </div>\\r\\n                </div>\\r\\n                <br>\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\" [siAllValid]=\\\"siAllValid\\\"\\r\\n                    [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n                    [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n                </detail-message>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION' || mode=='MODIFICATION'\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!personneForm.form.valid || !checkSiFormulaireValide()\\\">Sauvegarder</button>\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n\\r\\n            </form>\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n            <br>\\r\\n\\r\\n            <p-file [detail]=\\\"detail\\\" [siChangeFileValidAll]=\\\"siRecalculeFileChange\\\" [siValidationMode]=\\\"siValidationPageMode\\\" [siSubmitOk]=\\\"siSubmit&&siSubmitSuccess\\\"\\r\\n                (addFileRetour)=\\\"fileNouveauList.push($event)\\\" (onChangeValidation)=\\\"changeAllUnitValid()\\\" [siInputMode]=\\\"getSiInputMode(detail.siFilePresentAllValid)\\\"></p-file>\\r\\n\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n            <h3>\\r\\n                <strong>Aperçu</strong>\\r\\n            </h3>\\r\\n            <br>\\r\\n            <br>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"apercuBlock\\\">\\r\\n                    <br>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>\\r\\n                                <u>{{detail.nom}} {{detail.prenom}}\\r\\n                                    <span *ngIf=\\\"detail.surnom!=null\\\">({{detail.surnom}})</span>\\r\\n                                </u>\\r\\n                            </b>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <u>\\r\\n                                <span *ngFor=\\\"let nom of detail.autreNomVariante; let last = last\\\">\\r\\n                                    <span *ngIf=\\\"!nom.siDelete\\\">\\r\\n                                        {{nom.nom}}\\r\\n                                        <span *ngIf=\\\"nom.groupeId!=null&&nom.groupeId>0\\\">(\\r\\n                                            <a routerLink=\\\"/groupeDetail/{{nom.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{nom.groupeLibelle}}</a>)</span>\\r\\n                                        <span *ngIf=\\\"!last || !detail.autreNomSurnoms.length==0\\\">/</span>\\r\\n                                    </span>\\r\\n                                </span>\\r\\n                                <span *ngFor=\\\"let nom of detail.autreNomSurnoms; let last = last\\\">\\r\\n                                    <span *ngIf=\\\"!nom.siDelete\\\">\\r\\n                                        {{nom.nom}}\\r\\n                                        <span *ngIf=\\\"nom.groupeId!=null&&nom.groupeId>0\\\">(\\r\\n                                            <a routerLink=\\\"/groupeDetail/{{nom.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{nom.groupeLibelle}}</a>)</span>\\r\\n                                        <span *ngIf=\\\"!last\\\">/</span>\\r\\n                                    </span>\\r\\n                                </span>\\r\\n                            </u>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"row\\\" *ngIf=\\\"detail.dateNaissance!=null && detail.dateNaissance.length>0\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Date de naissance : </b>{{detail.dateNaissance| format :'date2'}}\\r\\n                            <br>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div *ngIf=\\\"(detail.dateNaissance==null || detail.dateNaissance.length==0)\\\" class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"detail.dateNaissanceIncertaineDeb!=null && detail.dateNaissanceIncertaineDeb.length>0 && detail.dateNaissanceIncertaineFin!=null && detail.dateNaissanceIncertaineFin.length>0\\\">\\r\\n                            <b>Date de naissance incertaine entre : </b>{{detail.dateNaissanceIncertaineDeb| format :'date2'}}\\r\\n                            <span>et</span> {{detail.dateNaissanceIncertaineFin| format :'date2'}}\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"detail.dateNaissanceIncertaineDeb!=null && detail.dateNaissanceIncertaineDeb.length>0 && (detail.dateNaissanceIncertaineFin==null || detail.dateNaissanceIncertaineFin.length==0)\\\">\\r\\n                            <b>Date de naissance incertaine après : </b>{{detail.dateNaissanceIncertaineDeb| format :'date2'}}\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"(detail.dateNaissanceIncertaineDeb==null || detail.dateNaissanceIncertaineDeb.length==0) && detail.dateNaissanceIncertaineFin!=null && detail.dateNaissanceIncertaineFin.length>0\\\">\\r\\n                            <b>Date de naissance incertaine avant : </b>{{detail.dateNaissanceIncertaineFin| format :'date2'}}\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\" *ngIf=\\\"detail.lieuNaissanceId!=null && detail.lieuNaissanceId>0 \\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Lieu de naissance : </b>{{detail.lieuNaissanceLibelle}}\\r\\n                            <!-- <span [hidden]=\\\"detail.paysNaissanceId==null\\\">({{detail.paysNaissanceLibelle}})</span>-->\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\" *ngIf=\\\"detail.dateMort!=null && detail.dateMort.length>0\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Date de décès : </b>{{detail.dateMort| format :'date2'}}\\r\\n                            <br>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div *ngIf=\\\"(detail.dateMort==null || detail.dateMort.length==0)\\\" class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"detail.dateMortIncertaineDeb!=null && detail.dateMortIncertaineDeb.length>0 && detail.dateMortIncertaineFin!=null && detail.dateMortIncertaineFin.length>0\\\">\\r\\n                            <b>Date de décès incertaine entre : </b>{{detail.dateMortIncertaineDeb| format :'date2'}}\\r\\n                            <span>et</span> {{detail.dateMortIncertaineFin| format :'date2'}}\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"detail.dateMortIncertaineDeb!=null && detail.dateMortIncertaineDeb.length>0 && (detail.dateMortIncertaineFin==null || detail.dateMortIncertaineFin.length==0)\\\">\\r\\n                            <b>Date de décès incertaine après : </b>{{detail.dateMortIncertaineDeb| format :'date2'}}\\r\\n                        </div>\\r\\n                        <div class=\\\"col-lg-12\\\" *ngIf=\\\"(detail.dateMortIncertaineDeb==null || detail.dateMortIncertaineDeb.length==0) && detail.dateMortIncertaineFin!=null && detail.dateMortIncertaineFin.length>0\\\">\\r\\n                            <b>Date de décès incertaine avant : </b>{{detail.dateMortIncertaineFin| format :'date2'}}\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\" *ngIf=\\\"detail.lieuMortId!=null && detail.lieuMortId>0 \\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Lieu de décès : </b>{{detail.lieuMortLibelle}}\\r\\n                            <span [hidden]=\\\"detail.paysMortId==null\\\">({{detail.paysMortLibelle}})</span>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\" *ngIf=\\\"detail.roleList!=null && detail.roleList.length>0\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Fonction(s)</b>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div *ngIf=\\\"detail.roleList!=null && detail.roleList.length>0\\\">\\r\\n                        <ul *ngFor=\\\"let role of detail.roleList\\\">\\r\\n                            <div class=\\\"row\\\" *ngIf=\\\"!role.siDelete && role.typeRoleId!=null && role.typeRoleId>0\\\">\\r\\n                                <div class=\\\"col-lg-12\\\">\\r\\n                                    <li *ngIf=\\\"role.typeRoleId!=null && role.typeRoleId>0\\\">\\r\\n                                        <span>{{role.typeRoleLibelle}}</span>\\r\\n                                        <span *ngIf=\\\"role.groupeId!=null&&role.groupeId>0\\\">\\r\\n                                            pour (\\r\\n                                            <a routerLink=\\\"/groupeDetail/{{role.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{role.groupeNom}}</a>)</span>\\r\\n                                    </li>\\r\\n\\r\\n                                </div>\\r\\n                            </div>\\r\\n                        </ul>\\r\\n\\r\\n                    </div>\\r\\n                    <!-- sur l écran d'Alexandra il n'y a pas la partie période et lieu d'activité\\r\\n                <div class=\\\"row\\\"><div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\"><hr></div></div>\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"detail.periodeActivite!=null && detail.periodeActivite.length>0\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <b>Périodes d'activité</b>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div *ngIf=\\\"detail.periodeActivite!=null && detail.periodeActivite.length>0\\\">\\r\\n                    <ul *ngFor=\\\"let periode of detail.periodeActivite\\\" >\\r\\n                        <div class=\\\"row\\\"  *ngIf=\\\"!periode.siDelete\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                            <li *ngIf=\\\"periode.dateDebut!=null && periode.dateDebut.length>0 && periode.dateFin!=null && periode.dateFin.length>0\\\">\\r\\n                                <span> Entre le </span>{{periode.dateDebut}} <span> et le </span> {{periode.dateFin}}\\r\\n                            </li>\\r\\n                            <li *ngIf=\\\"periode.dateDebut!=null && periode.dateDebut.length>0 && (periode.dateFin==null || periode.dateFin.length==0)\\\">\\r\\n                                <span>Après le </span>{{periode.dateDebut}}\\r\\n                            </li>\\r\\n                            <li *ngIf=\\\"(periode.dateDebut==null || periode.dateDebut.length==0) && periode.dateFin!=null && periode.dateFin.length>0\\\">\\r\\n                                <span>Avant le </span>{{periode.dateFin}}\\r\\n                            </li>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </ul>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                lieu activite:\\r\\n                <div *ngIf=\\\"detail.lieuActivite!=null && detail.lieuActivite.length>0\\\">\\r\\n                    <b>Lieu(x) d'activité</b><br>\\r\\n                    <ul *ngFor=\\\"let lieu of detail.lieuActivite\\\" style=\\\"margin-bottom: -2px\\\">\\r\\n                        <li *ngIf=\\\"lieu.lieuId!=null && lieu.lieuId>0 && !lieu.siDelete\\\">{{lieu.lieuLibelle}} ({{lieu.paysLibelle}})</li>\\r\\n                    </ul>\\r\\n                </div>\\r\\n                -->\\r\\n                    <br>\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <b>Lieu(x) d'activité</b>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div *ngIf=\\\"detail.lieuActivite!=null && detail.lieuActivite.length>0\\\">\\r\\n                        <ul *ngFor=\\\"let lieu of detail.lieuActivite\\\">\\r\\n                            <div class=\\\"row\\\" *ngIf=\\\"!lieu.siDelete\\\">\\r\\n                                <div class=\\\"col-lg-12\\\">\\r\\n                                    <li>\\r\\n                                        <span>{{lieu.lieuLibelle}}\\r\\n                                            <span *ngIf=\\\"lieu.codeInsee!=null\\\"> ({{lieu.codeInsee}})</span>\\r\\n                                        </span>\\r\\n\\r\\n                                    </li>\\r\\n\\r\\n                                </div>\\r\\n                            </div>\\r\\n                        </ul>\\r\\n\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            \\r\\n                                <b>Fichiers joints</b>\\r\\n                            \\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <ul *ngFor=\\\"let f of detail.fileList\\\">\\r\\n                            <div class=\\\"row\\\" >\\r\\n                                <div class=\\\"col-lg-12\\\" *ngIf=\\\"!f.siDelete\\\" >\\r\\n                                    <li><a routerLinkActive=\\\"active\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a></li>\\r\\n                                </div>\\r\\n                            </div>\\r\\n                        </ul>\\r\\n                    \\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                            <hr>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <div class=\\\"row\\\">\\r\\n                        <div class=\\\"col-lg-12\\\">\\r\\n                            <p-detail-info-utilisateur [createur]=\\\"detail.createur\\\" [modificateurList]=\\\"detail.modificateurList\\\" [siPersonneInterne]=\\\"user.profil == 'SUPER_ADMINISTRATEUR' || user.profil == 'CHERCHEUR'\\\"></p-detail-info-utilisateur>\\r\\n                        </div>\\r\\n                    </div>\\r\\n\\r\\n                    <br>\\r\\n                </div>\\r\\n\\r\\n            </div>\\r\\n\\r\\n\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n\\r\\n    </div>\\r\\n\\r\\n</div>\\r\\n\\r\\n<!--\\r\\n<div *ngIf=\\\"mode=='CONSULTATION'\\\">\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n            <div>\\r\\n                <h3><strong>Consultation d'une personne</strong></h3>\\r\\n            </div>\\r\\n\\r\\n\\r\\n\\r\\n            <br><br>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Civilité</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.civiliteLibelle}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Nom</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.nom}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Prénom</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.prenom}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Variantes du nom</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div *ngFor=\\\"let autresNoms of detail.autreNomVariante\\\">\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-3\\\"></div>\\r\\n                    <div class=\\\"col-lg-9\\\">\\r\\n                        <label for=\\\"personSurname\\\"> {{autresNoms.nom}}</label> <label for=\\\"personSurname\\\" class=\\\"label1 label2\\\"\\r\\n                            *ngIf=\\\"autresNoms.groupeLibelle !=null && autresNoms.groupeLibelle.length>0\\\">pour </label>\\r\\n                        <label for=\\\"personSurname\\\" *ngIf=\\\"autresNoms.groupeLibelle !=null && autresNoms.groupeLibelle.length>0\\\">{{autresNoms.groupeLibelle}}</label>                        <label for=\\\"personSurname\\\" *ngIf=\\\"autresNoms.contexte !=null && autresNoms.contexte.length>0\\\">({{autresNoms.contexte}})</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Surnom(s)</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div *ngFor=\\\"let surnom of detail.autreNomSurnoms\\\">\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-3\\\"></div>\\r\\n                    <div class=\\\"col-lg-9\\\">\\r\\n                        <label for=\\\"personSurname\\\"> {{surnom.nom}}</label> <label for=\\\"personSurname\\\" class=\\\"label1 label2\\\"\\r\\n                            *ngIf=\\\"surnom.groupeLibelle !=null && surnom.groupeLibelle.length>0\\\">pour </label><label for=\\\"personSurname\\\"\\r\\n                            *ngIf=\\\"surnom.groupeLibelle !=null && surnom.groupeLibelle.length>0\\\">{{surnom.groupeLibelle}}</label>\\r\\n                        <label for=\\\"personSurname\\\" *ngIf=\\\"surnom.contexte !=null && surnom.contexte.length>0\\\">({{surnom.contexte}})</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Date de naissance</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label *ngIf=\\\"detail.dateNaissance!=null\\\">{{detail.dateNaissance}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateNaissance==null && detail.dateNaissanceIncertaineDeb !=null && detail.dateNaissanceIncertaineFin!=null\\\">Entre le {{detail.dateNaissanceIncertaineDeb}} et le {{detail.dateNaissanceIncertaineFin}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateNaissance==null && detail.dateNaissanceIncertaineDeb !=null && detail.dateNaissanceIncertaineFin==null\\\">Après le {{detail.dateNaissanceIncertaineDeb}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateNaissance==null && detail.dateNaissanceIncertaineDeb ==null && detail.dateNaissanceIncertaineFin!=null\\\">Avant le {{detail.dateNaissanceIncertaineFin}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Lieu de naissance</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.lieuNaissanceLibelle}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Date de décès</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label *ngIf=\\\"detail.dateMort!=null\\\">{{detail.dateMort}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateMort==null && detail.dateMortIncertaineDeb !=null && detail.dateMortIncertaineFin!=null\\\">Entre le {{detail.dateMortIncertaineDeb}} et le {{detail.dateMortIncertaineFin}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateMort==null && detail.dateMortIncertaineDeb !=null && detail.dateMortIncertaineFin==null\\\">Après le {{detail.dateMortIncertaineDeb}}</label>\\r\\n                    <label *ngIf=\\\"detail.dateMort==null && detail.dateMortIncertaineDeb ==null && detail.dateMortIncertaineFin!=null\\\">Avant le {{detail.dateMortIncertaineFin}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Lieu de décès</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.lieuMortLibelle}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Fonction(s)</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div *ngFor=\\\"let role of detail.roleList\\\">\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-3\\\"></div>\\r\\n                    <div class=\\\"col-lg-9\\\">\\r\\n                        <label for=\\\"personSurname\\\"> {{role.typeRoleLibelle}}</label> <label for=\\\"personSurname\\\" class=\\\"label1 label2\\\"\\r\\n                            *ngIf=\\\"role.groupeLibelle !=null && role.groupeLibelle.length>0\\\">pour </label><label for=\\\"personSurname\\\"\\r\\n                            *ngIf=\\\"role.groupeLibelle !=null && role.groupeLibelle.length>0\\\">{{role.groupeLibelle}}</label>\\r\\n                        <span *ngIf=\\\"role.dateDebut !=null && role.dateFin!=null\\\">entre le <label >{{role.dateDebut}}</label> et le <label >{{role.dateFin}}</label></span>\\r\\n                        <span *ngIf=\\\"role.dateDebut !=null && role.dateFin==null\\\">après le <label >{{role.dateDebut}}</label></span>\\r\\n                        <span *ngIf=\\\"role.dateDebut ==null && role.dateFin!=null\\\">avant le <label >{{role.dateFin}}</label></span>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Lieu(x) d'activité</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\" *ngFor=\\\"let l of detail.lieuActivite\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{l.lieuLibelle}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Biographie</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-9\\\">\\r\\n                    <label>{{detail.biographie}}</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n                    <hr>\\r\\n                </div>\\r\\n            </div>\\r\\n            <br>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"personSurname\\\" class=\\\"label1\\\">Fichier</label>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div *ngFor=\\\"let f of detail.fileList\\\">\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-3\\\"></div>\\r\\n                    <div class=\\\"col-lg-9\\\">\\r\\n                        <label for=\\\"personSurname\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</label>\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-6\\\">\\r\\n\\r\\n        </div>\\r\\n\\r\\n\\r\\n    </div>\\r\\n</div>-->\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/personne-detail.component.html\n// module id = 1061\n// module chunks = 1","module.exports = \"<header></header><navbar [select]=\\\"'personne'\\\"></navbar>\\r\\n\\r\\n<div >\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n<div class=\\\"col-lg-2\\\">\\r\\n\\r\\n</div>\\r\\n<div class=\\\"col-lg-8\\\">\\r\\n    <br><br>\\r\\n    \\r\\n    <a *ngIf=\\\"siDroitAccessCreate\\\" routerLink=\\\"/personneDetail/0/CREATION\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button \\\" class=\\\"btn  pull-right button-creer\\\"  >Créer une nouvelle personne </button></a>\\r\\n<br><br>\\r\\n\\r\\n<h3><strong>Modifier une personne déjà existante : </strong></h3>\\r\\n<form (ngSubmit)=\\\"onSubmit()\\\" #personneList=\\\"ngForm\\\" class=\\\"searchCritere\\\" >\\r\\n    \\r\\n\\r\\n        <!--\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Chercher par:</label>\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Nom</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nom\\\" [(ngModel)]=\\\"search.nom\\\" name=\\\"nom\\\" #nom=\\\"ngModel\\\">\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Fonction</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <select class=\\\"form-control\\\" id=\\\"typeRole\\\" \\r\\n                    [(ngModel)]=\\\"search.typeRole\\\" name=\\\"typeRole\\\"\\r\\n                    #typeRole=\\\"ngModel\\\" >\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let role of roleList\\\" [value]=\\\"role.id\\\">{{role.libelle}}</option>\\r\\n                </select>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-4\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n        </div>-->\\r\\n        <!--test:\\r\\n        <ng2-completer [(ngModel)]=\\\"toto\\\" [datasource]=\\\"roleList\\\" [minSearchLength]=\\\"0\\\"></ng2-completer>-->\\r\\n\\r\\n        \\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Chercher par:</label>\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Nom</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nom\\\" [(ngModel)]=\\\"search.nom\\\" name=\\\"nom\\\" #nom=\\\"ngModel\\\">\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Fonction</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <p-select \\r\\n                    [(valueId)]=\\\"search.typeRole\\\" id=\\\"typeRole\\\" typeObject=\\\"TYPE_ROLE\\\" >\\r\\n                </p-select>\\r\\n                <!--\\r\\n                <select class=\\\"form-control\\\" id=\\\"typeRole\\\" \\r\\n                    [(ngModel)]=\\\"search.typeRole\\\" name=\\\"typeRole\\\"\\r\\n                    #typeRole=\\\"ngModel\\\" >\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let role of roleList\\\" [value]=\\\"role.id\\\">{{role.libelle}}</option>\\r\\n                </select>-->\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-4\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Surnom</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"surnom\\\" [(ngModel)]=\\\"search.surnom\\\" name=\\\"surnom\\\" #surnom=\\\"ngModel\\\">\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Groupe</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-4\\\">\\r\\n                <p-select \\r\\n                    [(valueId)]=\\\"search.groupeId\\\" id=\\\"groupe\\\" typeObject=\\\"GROUPE_LIST\\\" >\\r\\n                </p-select>\\r\\n                <!--\\r\\n                <select class=\\\"form-control\\\" id=\\\"groupe\\\" \\r\\n                    [(ngModel)]=\\\"search.groupeId\\\" name=\\\"groupe\\\"\\r\\n                    #groupe=\\\"ngModel\\\" >\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let g of groupeList\\\" [value]=\\\"g.id\\\">{{g.libelle}}</option>\\r\\n                </select>-->\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Ayant vécu entre</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <p-input type=\\\"date\\\" id=\\\"dateDebut\\\" [(value)]=\\\"search.dateNaissance\\\"></p-input>\\r\\n                <!--<my-date-picker name=\\\"dateDebut\\\" id=\\\"dateDebut\\\"  \\r\\n                   (dateChanged)=\\\"onDateChanged($event,'NAISSANCE')\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n                <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">et</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n                <p-input type=\\\"date\\\" id=\\\"dateFin\\\" [(value)]=\\\"search.dateMort\\\"></p-input>\\r\\n                <!--<my-date-picker name=\\\"dateFin\\\" id=\\\"dateFin\\\" \\r\\n                   (dateChanged)=\\\"onDateChanged($event,'MORT')\\\" [options]=\\\"myDatePickerOptions\\\"></my-date-picker>-->\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-3\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-8\\\">\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n            <button type=\\\"button\\\" class=\\\"btn button-reset\\\" (click)=\\\"reset()\\\" >Reset</button>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n            <button type=\\\"submit\\\" class=\\\"btn button-search\\\" [disabled]=\\\"!personneList.form.valid\\\" >Rechercher</button>\\r\\n        </div>\\r\\n    </div>\\r\\n    <br>\\r\\n</form>\\r\\n\\r\\n \\r\\n\\r\\n<br><br>\\r\\n\\r\\n<div [hidden]=\\\"!aucunResultat\\\"><strong>Aucun résultat ne correspond à votre recherche</strong></div>\\r\\n<table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n  <thead>\\r\\n        <tr>\\r\\n            <th width=\\\"21%\\\" [class]=\\\"selectedClass('nom')\\\" (click)=\\\"changeSorting('nom')\\\">Nom Prénom</th>\\r\\n            <th width=\\\"12%\\\" [class]=\\\"selectedClass('surnom')\\\" (click)=\\\"changeSorting('surnom')\\\">Surnom</th>\\r\\n            <th width=\\\"13%\\\" [class]=\\\"selectedClass('dateNaissance')\\\" (click)=\\\"changeSorting('dateNaissance')\\\">Date naissance</th>\\r\\n            <th width=\\\"12%\\\" [class]=\\\"selectedClass('lieuNaissanceLibelle')\\\" (click)=\\\"changeSorting('lieuNaissanceLibelle')\\\">Lieu naissance</th>\\r\\n            <th width=\\\"13%\\\" [class]=\\\"selectedClass('dateMort')\\\" (click)=\\\"changeSorting('dateMort')\\\">Date de mort</th>\\r\\n            <th width=\\\"12%\\\" [class]=\\\"selectedClass('typeRoleLibelle')\\\" (click)=\\\"changeSorting('typeRoleLibelle')\\\">Fonction</th>\\r\\n            <th width=\\\"12%\\\" [class]=\\\"selectedClass('groupeNom')\\\" (click)=\\\"changeSorting('groupeNom')\\\">Groupe</th>\\r\\n            <th width=\\\"5%\\\" >Éditer</th>\\r\\n            <th width=\\\"5%\\\" *ngIf=\\\"getSiAdministrateur()\\\">Supprimer</th>\\r\\n        </tr>\\r\\n    </thead>\\r\\n    <tbody>\\r\\n        <tr *ngFor=\\\"let per of rows | orderBy : convertSorting();\\\"   [hidden]=\\\"!(per.siFirstLigne || per.siVisible)\\\" class=\\\"tableRow{{per.numeroStyle}}\\\">\\r\\n            <td>\\r\\n                <h4 *ngIf=\\\"(per.siFirstLigne) || !per.siFirstLigne && siTriEnCour\\\">\\r\\n                    <i *ngIf=\\\"!per.siSousLigneAffiche && per.nbrMemePersonne>1\\\" class=\\\"fa fa-caret-square-o-right\\\" aria-hidden=\\\"true\\\"  (click)=\\\"onChangeVisibiliteSousLigne(per.personneId,true)\\\" title=\\\"Afficher les autres informations de cette personne\\\"></i>\\r\\n                    <i *ngIf=\\\"per.siSousLigneAffiche && per.nbrMemePersonne>1\\\" class=\\\"fa fa-caret-square-o-down\\\" aria-hidden=\\\"true\\\"  (click)=\\\"onChangeVisibiliteSousLigne(per.personneId,false)\\\" title=\\\"Cacher les autres informations de cette personne\\\"></i>\\r\\n                    {{per.nom}}<span *ngIf=\\\"per.nom==null || per.nom.length==0\\\">{{per.nomArtiste}}</span> <span *ngIf=\\\"per.prenom!=null && per.prenom.length>0\\\">, {{per.prenom}}</span><span *ngIf=\\\"per.nom!=null && per.nom.length>0&&per.nomArtiste!=null&&per.nomArtiste.length>0\\\"> ({{per.nomArtiste}})</span>\\r\\n                </h4>\\r\\n                \\r\\n            </td>\\r\\n            <td><h4>{{per.surnom}}</h4></td>\\r\\n            <td><h4>{{per.dateNaissance | date: 'dd-MM-yyyy' }}</h4></td>\\r\\n            <td><h4>{{per.lieuNaissanceLibelle}}</h4></td>\\r\\n            <td><h4>{{per.dateMort | date: 'dd-MM-yyyy' }}</h4></td>\\r\\n            <td><h4>{{per.typeRoleLibelle}}</h4></td>\\r\\n            <td><h4>{{per.groupeNom}}</h4></td>\\r\\n            <td *ngIf=\\\"getModeRedirectionDetail(per)=='MODIFICATION'\\\"><h4><a (click)=\\\"goToDetail(per,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\" title=\\\"Modifier\\\"></i></a></h4></td>\\r\\n            <td *ngIf=\\\"getModeRedirectionDetail(per)=='CONSULTATION'\\\"><h4><a (click)=\\\"goToDetail(per,'CONSULTATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-search-plus\\\" aria-hidden=\\\"true\\\" title=\\\"Consulter\\\"></i></a></h4></td>\\r\\n            <td *ngIf=\\\"getSiAdministrateur()\\\"><h4>\\r\\n                <i (click)=\\\"toDelete(per);\\\" class=\\\"fa fa-times-circle\\\" aria-hidden=\\\"true\\\"  title=\\\"Supprimer\\\"></i>\\r\\n                </h4>\\r\\n            </td>\\r\\n        </tr>\\r\\n    </tbody>\\r\\n</table>\\r\\n\\r\\n\\r\\n       \\r\\n</div>\\r\\n<div class=\\\"col-lg-2\\\">\\r\\n   \\r\\n     \\r\\n        \\r\\n</div>\\r\\n</div>\\t\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/personneList.component.html\n// module id = 1062\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'production'\\\"></navbar>\\r\\n\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n  <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n  </div>\\r\\n  <div class=\\\"col-lg-4\\\">\\r\\n    <div [hidden]=\\\"!(mode=='CREATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Création d'un album</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n    <div [hidden]=\\\"!(mode=='MODIFICATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Modification d'un album</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n    <div [hidden]=\\\"!(mode=='CONSULTATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Consultation d'un album</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n\\r\\n\\r\\n    <br>\\r\\n    <br>\\r\\n    <form name=\\\"albumForm\\\" (ngSubmit)=\\\"createOrUpdate()\\\" #albumForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n      <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\"\\r\\n        [siAllValid]=\\\"siAllValid\\\" [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n        [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n      </detail-message>\\r\\n\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n        <div class=\\\"col-lg-1\\\">\\r\\n          <!-- a voir pour l'alignement-->\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12 marginCheckBoxValidation1\\\">\\r\\n              <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siProductionAllValide\\\" [(ngModel)]=\\\"detail.siProductionAllValide\\\"\\r\\n                name=\\\"siProductionAllValide\\\" (change)=\\\"changeValidAll()\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-11\\\">\\r\\n          <label for=\\\"nom\\\" class=\\\"label1\\\">Tout valider</label>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Type\\\" forLabel=\\\"type\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTypeAlbumIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTypeAlbumIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n          <!--<label for=\\\"personSurname\\\" class=\\\"label1\\\">Type</label>-->\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"typeAlbum\\\" [(value)]=\\\"detail.typeAlbumLibelle\\\" [(valueId)]=\\\"detail.typeAlbumId\\\"\\r\\n            typeObject=\\\"ALBUM_TYPE\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeAlbumIdValide\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siTypeAlbumIdValide)\\\" (actionRetourSiInconnu)=\\\"siTypeAlbumInconnu=$event\\\">\\r\\n          </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-type-album-simple [(value)]=\\\"detail.typeAlbumLibelle\\\" [siAffiche]=\\\"siTypeAlbumInconnu\\\" id=\\\"typeAlbumCreate\\\"\\r\\n        (actionRetour)=\\\"detail.typeAlbumId=$event;siTypeAlbumInconnu=false\\\">\\r\\n      </p-create-type-album-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Titre\\\" forLabel=\\\"titre\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTitreValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTitreValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"titre\\\" [(value)]=\\\"detail.titre\\\" [siInput]=\\\"getSiInputMode(detail.siTitreValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTitreValide\\\" (actionRetour)=\\\"checkUniciteNomAlbum()\\\"\\r\\n            siRequired=\\\"true\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"nomAlbumSimilaireIdList != null && nomAlbumSimilaireIdList.length >0\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            Le titre saisies existent déjà.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            <br>Vous pouvez accéder à la fichie existante en cliquant içi\\r\\n            <a routerLink=\\\"/productionAlbumDetail/{{nomAlbumSimilaireIdList[0].id}}/MODIFICATION\\\" target=\\\"_blank\\\"\\r\\n              routerLinkActive=\\\"active\\\">\\r\\n              <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder à l'album avec le même nom\\\"></i>\\r\\n            </a>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Groupe(s) [relation]\\\" siAllLigne=\\\"true\\\" forLabel=\\\"auteursgroupe\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siGroupeAllValide\\\" [(valueCheckBox)]=\\\"detail.siGroupeAllValide\\\" (actionRetour)=\\\"changeGroupeAllValid()\\\">\\r\\n          </p-label>\\r\\n          <!--<label for=\\\"personSurname\\\" class=\\\"label1\\\">Auteur(s) [relation]</label>-->\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let gr of detail.groupes\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"gr.siDelete\\\" (change)=\\\"gr.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"groupeSiValide{{gr.productionGroupeId}}\\\" [(ngModel)]=\\\"gr.siValide\\\"\\r\\n                  name=\\\"groupeSiValide{{gr.productionGroupeId}}\\\" (change)=\\\"changeGroupeUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"groupeNom{{gr.productionGroupeId}}\\\" [(value)]=\\\"gr.nom\\\" [(valueId)]=\\\"gr.groupeId\\\"\\r\\n                  (actionRetour)=\\\"gr.siChange=true;\\\" (actionRetourSiInconnu)=\\\"gr.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!gr.siValide\\\" [siInput]=\\\"getSiInputMode(gr.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"groupeNom{{gr.productionGroupeId}}\\\" [(value)]=\\\"gr.nom\\\" [(valueId)]=\\\"gr.groupeId\\\"\\r\\n                  (actionRetour)=\\\"gr.siChange=true;\\\" (actionRetourSiInconnu)=\\\"gr.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!gr.siValide\\\" [siInput]=\\\"getSiInputMode(gr.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(gr.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"gr.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n\\r\\n              </div>\\r\\n            </div>\\r\\n\\r\\n          </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div [hidden]=\\\"!gr.siGroupeInconnu || gr.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Groupe inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-groupe-simple [(value)]=\\\"gr.nom\\\" [siAffiche]=\\\"gr.siGroupeInconnu && !gr.siDelete\\\" id=\\\"groupe2Nom{{gr.productionGroupeId}}\\\"\\r\\n          (actionRetour)=\\\"gr.groupeId=$event;gr.siGroupeInconnu=false\\\">\\r\\n        </p-create-groupe-simple>\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siGroupeAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addGroupe();siSubmit=false\\\"\\r\\n        title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Personne(s) [relation]\\\" siAllLigne=\\\"true\\\" forLabel=\\\"auteurs\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siAuteurAllValide\\\" [(valueCheckBox)]=\\\"detail.siAuteurAllValide\\\" (actionRetour)=\\\"changeAuteurAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let auteur of detail.auteurs\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"auteurSiValide{{auteur.productionArtisteId}}\\\"\\r\\n                  [(ngModel)]=\\\"auteur.siValide\\\" name=\\\"auteurSiValide{{auteur.productionArtisteId}}\\\" (change)=\\\"changeAuteurUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"auteurNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"auteurNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(auteur.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"auteur.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n\\r\\n              </div>\\r\\n            </div>\\r\\n\\r\\n          </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div [hidden]=\\\"!auteur.siAuteurInconnu || auteur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-personne-simple [(value)]=\\\"auteur.nom\\\" [siAffiche]=\\\"auteur.siAuteurInconnu && !auteur.siDelete\\\" id=\\\"auteur2Nom{{auteur.productionArtisteId}}\\\"\\r\\n          (actionRetour)=\\\"auteur.personneId=$event;auteur.siAuteurInconnu=false\\\" (onKeyUpNomPrenom)=\\\"auteur.nom=$event;\\\">\\r\\n        </p-create-personne-simple>\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siAuteurAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addAuteur();siSubmit=false\\\"\\r\\n        title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Liste des titres\\\" siAllLigne=\\\"true\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTableMatiereAllValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTableMatiereAllValide\\\" (actionRetour)=\\\"changeTableMatiereAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let t of detail.tableMatiere\\\">\\r\\n        <div class=\\\"row\\\" (change)=\\\"t.siChange=true\\\" [hidden]=\\\"t.siDelete\\\">\\r\\n          <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"tableMatiereNumSiValide{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              [(ngModel)]=\\\"t.siValide\\\" name=\\\"tableMatiereLigneSiValide{{t.morceauIdOld}}{{t.numero}}\\\" (change)=\\\"changeTableMatiereBlockValid(t)\\\">\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"tableMatiereNumSiValide{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              [(ngModel)]=\\\"t.siNumeroValide\\\" name=\\\"tableMatiereNumSiValide{{t.morceauIdOld}}{{t.numero}}\\\" (change)=\\\"changeTableMatiereUnitValid(t)\\\">\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-4\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n\\r\\n          </div>\\r\\n\\r\\n          <div class=\\\"col-lg-2\\\">\\r\\n            <p-input type=\\\"numeroPiste\\\" id=\\\"numeroPiste{{t.morceauIdOld}}{{t.numero}}\\\" [(value)]=\\\"t.numero\\\" [siInput]=\\\"getSiInputMode(t.siNumeroValide)\\\"\\r\\n              [siValidationAndNonValid]=\\\"siValidationPageMode&&!t.siNumeroValide\\\" (actionRetour2)=\\\"changeNumeroTableMatiere(t)\\\"\\r\\n              [siRequired]=\\\"!t.siDelete\\\"></p-input>\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n            <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"tableMatiereMorceauSiValide{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              [(ngModel)]=\\\"t.siMorceauAlbumIdValide\\\" name=\\\"tableMatiereMorceauSiValide{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              (change)=\\\"changeTableMatiereUnitValid(t)\\\">\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-4\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n            <p-auto-complete [(value)]=\\\"t.titre\\\" [(valueId)]=\\\"t.morceauId\\\" id=\\\"tableMatiereMorceau{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              (actionRetour)=\\\"t.siChange=true;\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!t.siMorceauAlbumIdValide\\\"\\r\\n              [siInput]=\\\"getSiInputMode(t.siMorceauAlbumIdValide)\\\" (actionRetourSiInconnu)=\\\"t.siInconnu=$event\\\"\\r\\n              typeObject=\\\"ALBUM_MORCEAU\\\"> </p-auto-complete>\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-5\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n            <p-auto-complete [(value)]=\\\"t.titre\\\" [(valueId)]=\\\"t.morceauId\\\" id=\\\"tableMatiereMorceau{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n              (actionRetour)=\\\"t.siChange=true;\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!t.siMorceauAlbumIdValide\\\"\\r\\n              [siInput]=\\\"getSiInputMode(t.siMorceauAlbumIdValide)\\\" (actionRetourSiInconnu)=\\\"t.siInconnu=$event\\\"\\r\\n              typeObject=\\\"ALBUM_MORCEAU\\\"> </p-auto-complete>\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-1\\\">\\r\\n            <i *ngIf=\\\"getSiInputMode(t.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"t.siDelete=true;siSubmit=false\\\"\\r\\n              title=\\\"Supprimer\\\"></i>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div [hidden]=\\\"!t.siInconnu || t.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Morceau inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en\\r\\n          créer une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-morceau-simple [value]=\\\"t.titre\\\" [siAffiche]=\\\"t.siInconnu&&!t.siDelete\\\" id=\\\"table2Matiere{{t.morceauIdOld}}{{t.numero}}\\\"\\r\\n          (actionRetour)=\\\"t.morceauId=$event;t.siInconnu=false\\\" (onKeyUpNom)=\\\"t.titre=$event\\\">\\r\\n        </p-create-morceau-simple>\\r\\n        <div [hidden]=\\\"!t.siNumeroNoNumberOrEmpty || t.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Le numéro de piste doit être un nombre.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siTableMatiereAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addTableMatiere();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Labels\\\" siAllLigne=\\\"true\\\" forLabel=\\\"editeurs\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siEditeurIdValide\\\" [(valueCheckBox)]=\\\"detail.siEditeurIdValide\\\" (actionRetour)=\\\"changeEditeursAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let editeur of detail.editeurs\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\"></div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"editeur.siDelete\\\" (change)=\\\"editeur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"editeurSiValide{{editeur.entrepriseId}}\\\" [(ngModel)]=\\\"editeur.siValide\\\"\\r\\n                  name=\\\"editeurSiValide{{editeur.entrepriseId}}\\\" (change)=\\\"changeEditeurUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"editeurNom{{editeur.entrepriseId}}\\\" [(value)]=\\\"editeur.nom\\\" [(valueId)]=\\\"editeur.entrepriseId\\\"\\r\\n                  (actionRetour)=\\\"editeur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"editeur.siEditeurInconnu=$event\\\"\\r\\n                  typeObject=\\\"ENTREPRISE\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!editeur.siValide\\\" [siInput]=\\\"getSiInputMode(editeur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"editeurNom{{editeur.entrepriseId}}\\\" [(value)]=\\\"editeur.nom\\\" [(valueId)]=\\\"editeur.personneId\\\"\\r\\n                  (actionRetour)=\\\"editeur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"editeur.siEditeurInconnu=$event\\\"\\r\\n                  typeObject=\\\"ENTREPRISE\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!editeur.siValide\\\" [siInput]=\\\"getSiInputMode(editeur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(editeur.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"editeur.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div [hidden]=\\\"!editeur.siEditeurInconnu || editeur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Editeur inconnu : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-entreprise-simple [(value)]=\\\"editeur.nom\\\" [siAffiche]=\\\"editeur.siEditeurInconnu && !editeur.siDelete\\\"\\r\\n          id=\\\"editeurNom2Nom{{editeur.entrepriseId}}\\\" (actionRetour)=\\\"editeur.entrepriseId=$event;editeur.siEditeurInconnu=false\\\">\\r\\n        </p-create-entreprise-simple>\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siEditeurIdValide)\\\" class=\\\"fa fa-plus-square fa-lg\\r\\n           \\\" aria-hidden=\\\"true\\\"\\r\\n        (click)=\\\"addEditeur();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Distributeur\\\" forLabel=\\\"distrubteur\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siDistributeurIdValide\\\" [(valueCheckBox)]=\\\"detail.siDistributeurIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"distributeur\\\" [(value)]=\\\"detail.distributeurNom\\\" [(valueId)]=\\\"detail.distributeurId\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDistributeurIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siDistributeurIdValide)\\\"\\r\\n            (actionRetourSiInconnu)=\\\"siDistributeurInconnu=$event\\\" typeObject=\\\"ENTREPRISE\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\" [hidden]=\\\"!siDistributeurInconnu\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            Entreprise inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en\\r\\n            créer une.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-entreprise-simple [(value)]=\\\"detail.distributeurNom\\\" [siAffiche]=\\\"siDistributeurInconnu\\\" id=\\\"distributeur2\\\"\\r\\n        (actionRetour)=\\\"detail.distributeurId=$event;siDistributeurInconnu=false\\\">\\r\\n      </p-create-entreprise-simple>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Date\\\" forLabel=\\\"datepubnlication\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDatePublicationValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siDatePublicationValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7  form-inline\\\">\\r\\n          <p-input type=\\\"date2\\\" id=\\\"datePublication\\\" [(value)]=\\\"detail.datePublication\\\" [siInput]=\\\"getSiInputMode(detail.siDatePublicationValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDatePublicationValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Durée\\\" forLabel=\\\"format\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDureeValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siDureeValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"formatStr\\\" [(value)]=\\\"detail.formatStr\\\" [siInput]=\\\"getSiInputMode(detail.siDureeValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDureeValide\\\" pattern=\\\"^(?:(\\\\d{0,2})(?:(h|H)|\\\\.){0,1})(?:([0-5]?\\\\d)(?:(m|M)|\\\\.){0,1})(?:([0-5]?\\\\d){0,1})(?:(s|S|)|\\\\.)$\\\"\\r\\n            placeholder=\\\"1h20m50\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Nombre de pistes\\\" forLabel=\\\"nbrposte\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siNbrPisteValide\\\" [(valueCheckBox)]=\\\"detail.siNbrPisteValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"number\\\" id=\\\"nbrPiste\\\" [(value)]=\\\"detail.nbrPiste\\\" [siInput]=\\\"getSiInputMode(detail.siNbrPisteValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNbrPisteValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Dédicace\\\" forLabel=\\\"dedicace\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDedicaceValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siDedicaceValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"dedicace\\\" [(value)]=\\\"detail.dedicace\\\" [siInput]=\\\"getSiInputMode(detail.siDedicaceValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDedicaceValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Description matérielle\\\" forLabel=\\\"Description matérielle\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siSupportAllValide\\\" [(valueCheckBox)]=\\\"detail.siSupportAllValide\\\" (actionRetour)=\\\"changeSupportAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <div *ngFor=\\\"let sup of detail.support\\\">\\r\\n            <div class=\\\"row\\\" (change)=\\\"sup.siChange=true\\\" [hidden]=\\\"sup.siDelete\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"supportSiValide{{sup.id}}\\\" [(ngModel)]=\\\"sup.siValide\\\"\\r\\n                  name=\\\"supportSiValide{{sup.id}}\\\" (change)=\\\"changeSupportUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"supportSupId{{sup.id}}\\\" [(value)]=\\\"sup.libelle\\\" [(valueId)]=\\\"sup.typeSupportId\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!sup.siValide\\\" [siInput]=\\\"getSiInputMode(sup.siValide)\\\"\\r\\n                  typeObject=\\\"SUPPORT\\\" (actionRetour)=\\\"sup.siChange=true\\\" (actionRetourSiInconnu)=\\\"sup.siInconu=$event\\\"\\r\\n                  [siRequired]=\\\"!sup.siDelete\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"supportSupId{{sup.id}}\\\" [(value)]=\\\"sup.libelle\\\" [(valueId)]=\\\"sup.typeSupportId\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!sup.siValide\\\" [siInput]=\\\"getSiInputMode(sup.siValide)\\\"\\r\\n                  typeObject=\\\"SUPPORT\\\" (actionRetour)=\\\"sup.siChange=true\\\" (actionRetourSiInconnu)=\\\"sup.siInconu=$event\\\"\\r\\n                  [siRequired]=\\\"!sup.siDelete\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(sup.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"\\r\\n                  (click)=\\\"sup.siDelete=true;siSubmit=false\\\"></i>\\r\\n              </div>\\r\\n\\r\\n\\r\\n            </div>\\r\\n\\r\\n            <p-create-support-simple [(value)]=\\\"sup.libelle\\\" [siAffiche]=\\\"sup.siInconu\\\" id=\\\"supportCreate{{sup.id}}\\\"\\r\\n              (actionRetour)=\\\"sup.typeSupportId=$event;sup.siInconu=false\\\">\\r\\n            </p-create-support-simple>\\r\\n          </div>\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siSupportAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addSupport();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Nombre de vente\\\" forLabel=\\\"nbrVente\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siNbrVenteValide\\\" [(valueCheckBox)]=\\\"detail.siNbrVenteValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"number\\\" id=\\\"nbrVente\\\" [(value)]=\\\"detail.nbrVente\\\" [siInput]=\\\"getSiInputMode(detail.siNbrVenteValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNbrVenteValide\\\"></p-input>\\r\\n\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Nombre de tirage\\\" forLabel=\\\"nbrTirage\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siNbrTirageValide\\\" [(valueCheckBox)]=\\\"detail.siNbrTirageValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"number\\\" id=\\\"nbrTirage\\\" [(value)]=\\\"detail.nbrTirage\\\" [siInput]=\\\"getSiInputMode(detail.siNbrTirageValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNbrTirageValide\\\"></p-input>\\r\\n\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"1ère édition\\\" forLabel=\\\"preEdition\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siNbrPisteValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siDatePremiereEditionValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7  form-inline\\\">\\r\\n          <p-input type=\\\"date2\\\" id=\\\"datePremiereEdition\\\" [(value)]=\\\"detail.datePremiereEdition\\\" [siInput]=\\\"getSiInputMode(detail.siDatePremiereEditionValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDatePremiereEditionValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <p-label valueLabel=\\\"Réedition(s)\\\" forLabel=\\\"reedition\\\" siAllLigne=\\\"true\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n        idCheckBox=\\\"siDateReeditionAllValide\\\" [(valueCheckBox)]=\\\"detail.siDateReeditionAllValide\\\" (actionRetour)=\\\"changeReeditionAllValid(true)\\\">\\r\\n      </p-label>\\r\\n      <div *ngFor=\\\"let d of detail.dateReedition\\\">\\r\\n        <div class=\\\"tableGroupe\\\" (change)=\\\"d.siChange=true\\\" [hidden]=\\\"d.siDelete\\\">\\r\\n          <br>\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-2 marginCheckBoxValidation2\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n              <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"reeditionSiValide{{d.id}}\\\" [(ngModel)]=\\\"d.siValide\\\" name=\\\"reeditionSiValide{{d.id}}\\\"\\r\\n                (change)=\\\"changeReeditionBlockValid(d)\\\">\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2 marginCheckBoxValidation2\\\" *ngIf=\\\"!siValidationPageMode\\\"></div>\\r\\n            <div class=\\\"col-lg-8 marginCheckBoxValidation2\\\">\\r\\n\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n              <i *ngIf=\\\"getSiInputMode(d.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"\\r\\n                (click)=\\\"d.siDelete=true;siSubmit=false\\\"></i>\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n            <br>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-4 marginCheckBoxValidation2\\\">\\r\\n              <p-label valueLabel=\\\"Date\\\" forLabel=\\\"dateReedition\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDateValide{{d.id}}\\\"\\r\\n                [(valueCheckBox)]=\\\"d.siDateValide\\\" (actionRetour)=\\\"changeReeditionUnitValid(d)\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-7 form-inline\\\">\\r\\n              <p-input type=\\\"date2\\\" id=\\\"dateReedition{{d.id}}\\\" [(value)]=\\\"d.date\\\" [siInput]=\\\"getSiInputMode(d.siDateValide)\\\"\\r\\n                (actionRetour)=\\\"d.siChange=true\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!d.siDateValide\\\"></p-input>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-1\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-4 marginCheckBoxValidation2\\\">\\r\\n              <p-label valueLabel=\\\"Label\\\" forLabel=\\\"editeurReedition\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siEditeurValide{{d.id}}\\\" [(valueCheckBox)]=\\\"d.siEditeurValide\\\" (actionRetour)=\\\"changeReeditionUnitValid(d)\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-6\\\">\\r\\n\\r\\n              <p-auto-complete id=\\\"exditeurReedition{{d.id}}\\\" [(value)]=\\\"d.editeurNom\\\" [(valueId)]=\\\"d.editeurId\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!d.siEditeurValide\\\" [siInput]=\\\"getSiInputMode(d.siEditeurValide)\\\"\\r\\n                (actionRetourSiInconnu)=\\\"d.siEditeurInconnu=$event\\\" typeObject=\\\"ENTREPRISE\\\"> </p-auto-complete>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"d.siEditeurInconnu\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <div class=\\\"alert alert-danger\\\">\\r\\n                Entreprise inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait,\\r\\n                veuillez en créer une.\\r\\n                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n          <p-create-entreprise-simple [(value)]=\\\"d.editeurNom\\\" [siAffiche]=\\\"d.siEditeurInconnu\\\" id=\\\"editeur2{{d.id}}\\\"\\r\\n            (actionRetour)=\\\"d.editeurId=$event;d.siEditeurInconnu=false\\\">\\r\\n          </p-create-entreprise-simple>\\r\\n\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-4 marginCheckBoxValidation2\\\">\\r\\n              <p-label valueLabel=\\\"Distributeur\\\" forLabel=\\\"distributeurReedition\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siDistributeurValide{{d.id}}\\\" [(valueCheckBox)]=\\\"d.siDistributeurIdValide\\\" (actionRetour)=\\\"changeReeditionUnitValid(d)\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-6\\\">\\r\\n\\r\\n              <p-auto-complete id=\\\"distributeurReedition{{d.id}}\\\" [(value)]=\\\"d.distributeurNom\\\" [(valueId)]=\\\"d.distributeurId\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!d.siDistributeurIdValide\\\" [siInput]=\\\"getSiInputMode(d.siDistributeurIdValide)\\\"\\r\\n                (actionRetourSiInconnu)=\\\"d.siDistrubteurInconnu=$event\\\" typeObject=\\\"ENTREPRISE\\\"> </p-auto-complete>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n\\r\\n\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"d.siDistrubteurInconnu\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <div class=\\\"alert alert-danger\\\">\\r\\n                Entreprise inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait,\\r\\n                veuillez en créer une.\\r\\n                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n          <p-create-entreprise-simple [(value)]=\\\"d.distributeurNom\\\" [siAffiche]=\\\"d.siDistrubteurInconnu\\\" id=\\\"editeur2{{d.id}}\\\"\\r\\n            (actionRetour)=\\\"d.distributeurId=$event;d.siDistrubteurInconnu=false\\\">\\r\\n          </p-create-entreprise-simple>\\r\\n\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-4 marginCheckBoxValidation2\\\">\\r\\n              <p-label valueLabel=\\\"Producteur\\\" forLabel=\\\"producteurReedition\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siProducteurValide{{d.id}}\\\" [(valueCheckBox)]=\\\"d.siProducteurValide\\\" (actionRetour)=\\\"changeReeditionUnitValid(d)\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-6\\\">\\r\\n\\r\\n              <p-auto-complete id=\\\"producteurReedition{{d.id}}\\\" [(value)]=\\\"d.producteurNom\\\" [(valueId)]=\\\"d.producteurId\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!d.siProducteurValide\\\" [siInput]=\\\"getSiInputMode(d.siProducteurValide)\\\"\\r\\n                (actionRetourSiInconnu)=\\\"d.siProducteurInconnu=$event\\\" typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n              </p-auto-complete>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"d.siProducteurInconnu\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <div class=\\\"alert alert-danger\\\">\\r\\n                Personne inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez\\r\\n                en créer une.\\r\\n                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n          <p-create-personne-simple [(value)]=\\\"d.producteurNom\\\" [siAffiche]=\\\"d.siProducteurInconnu\\\" id=\\\"producteur2{{d.id}}\\\"\\r\\n            (actionRetour)=\\\"d.producteurId=$event;d.siProducteurInconnu=false\\\">\\r\\n          </p-create-personne-simple>\\r\\n\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-4 marginCheckBoxValidation2\\\">\\r\\n              <p-label valueLabel=\\\"Commentaire\\\" forLabel=\\\"commentaire\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siCommentaireValide{{d.id}}\\\" [(valueCheckBox)]=\\\"d.siCommentaireValide\\\" (actionRetour)=\\\"changeReeditionUnitValid(d)\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-6\\\">\\r\\n\\r\\n              <p-input type=\\\"textarea\\\" id=\\\"commentaireReedition{{d.id}}\\\" [(value)]=\\\"d.commentaire\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!d.siCommentaireValide\\\" [siInput]=\\\"getSiInputMode(d.siCommentaireValide)\\\"\\r\\n                nbrRowArea=\\\"3\\\"></p-input>\\r\\n\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-2\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n\\r\\n          <br>\\r\\n        </div>\\r\\n        <br>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siDateReeditionAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addReedition();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Producteur\\\" forLabel=\\\"producteur\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siProducteurIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siProducteurIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"producteur\\\" [(value)]=\\\"detail.producteurNom\\\" [(valueId)]=\\\"detail.producteurId\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siProducteurIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siProducteurIdValide)\\\"\\r\\n            (actionRetourSiInconnu)=\\\"siProducteurInconnu=$event\\\" typeObject=\\\"PERSONNE_NOM_PRENOM\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\" [hidden]=\\\"!siProducteurInconnu\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            Personne inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en\\r\\n            créer une.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-personne-simple [(value)]=\\\"detail.producteurNom\\\" [siAffiche]=\\\"siProducteurInconnu\\\" id=\\\"producteur2\\\"\\r\\n        (actionRetour)=\\\"detail.producteurId=$event;siProducteurInconnu=false\\\">\\r\\n      </p-create-personne-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Mixage\\\" forLabel=\\\"mixageeedition\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siMixageIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siMixageIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\" (actionRetourSiInconnu)=\\\"siMixageInconnu=$event\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"mixage\\\" [(value)]=\\\"detail.mixageLibelle\\\" [(valueId)]=\\\"detail.mixageId\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siMixageIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siMixageIdValide)\\\"\\r\\n            typeObject=\\\"ALBUM_MIXAGE\\\" (actionRetourSiInconnu)=\\\"siMixageInconnu=$event\\\">\\r\\n          </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-mixage-simple [(value)]=\\\"detail.mixageLibelle\\\" [siAffiche]=\\\"siMixageInconnu\\\" id=\\\"maxiageCreate\\\"\\r\\n        (actionRetour)=\\\"detail.mixageId=$event;siMixageInconnu=false\\\">\\r\\n      </p-create-mixage-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Mastering\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siMasteringIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siMasteringIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"mastering\\\" [(value)]=\\\"detail.masteringLibelle\\\" [(valueId)]=\\\"detail.masteringId\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siMasteringIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siMasteringIdValide)\\\"\\r\\n            typeObject=\\\"ALBUM_MASTERING\\\" (actionRetourSiInconnu)=\\\"siTypeMasteringInconnu=$event\\\">\\r\\n          </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-mastering-simple [(value)]=\\\"detail.masteringLibelle\\\" [siAffiche]=\\\"siTypeMasteringInconnu\\\" id=\\\"masteringCreate\\\"\\r\\n        (actionRetour)=\\\"detail.masteringId=$event;siTypeMasteringInconnu=false\\\">\\r\\n      </p-create-mastering-simple>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Studio d'enregistrement\\\" siAllLigne=\\\"true\\\" forLabel=\\\"studio\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siStudioIdValide\\\" [(valueCheckBox)]=\\\"detail.siStudioIdValide\\\" (actionRetour)=\\\"changeStudioAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let st of detail.studio\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"st.siDelete\\\" (change)=\\\"st.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"studioSiValide{{st.productionStudioId}}\\\" [(ngModel)]=\\\"st.siValide\\\"\\r\\n                  name=\\\"studioSiValide{{st.productionStudioId}}\\\" (change)=\\\"changeStudioUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"studioNom{{st.productionStudioId}}\\\" [(value)]=\\\"st.libelle\\\" [(valueId)]=\\\"st.studioId\\\"\\r\\n                  (actionRetour)=\\\"st.siChange=true;\\\" (actionRetourSiInconnu)=\\\"st.siStudioInconnu=$event\\\" typeObject=\\\"ALBUM_STUDIO\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!st.siValide\\\" [siInput]=\\\"getSiInputMode(st.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"studioNom{{st.productionStudioId}}\\\" [(value)]=\\\"st.libelle\\\" [(valueId)]=\\\"st.studioId\\\"\\r\\n                  (actionRetour)=\\\"st.siChange=true;\\\" (actionRetourSiInconnu)=\\\"st.siStudioInconnu=$event\\\" typeObject=\\\"ALBUM_STUDIO\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!st.siValide\\\" [siInput]=\\\"getSiInputMode(st.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(st.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"st.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n\\r\\n              </div>\\r\\n            </div>\\r\\n\\r\\n          </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div [hidden]=\\\"!st.siStudioInconnu || st.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Studio inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-studio-simple [(value)]=\\\"st.libelle\\\" [siAffiche]=\\\"st.siStudioInconnu && !st.siDelete\\\" id=\\\"studioNom2Nom{{st.productionStudioId}}\\\"\\r\\n          (actionRetour)=\\\"st.studioId=$event;st.siStudioInconnu=false\\\" (onKeyUpNomPrenom)=\\\"st.libelle=$event;\\\">\\r\\n        </p-create-studio-simple>\\r\\n\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siStudioIdValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addStudio();siSubmit=false\\\"\\r\\n        title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n      <br>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Ingenieurs du son\\\" siAllLigne=\\\"true\\\" forLabel=\\\"ingenieursSon\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siIngenieursSonIdValide\\\" [(valueCheckBox)]=\\\"detail.siIngenieursSonIdValide\\\" (actionRetour)=\\\"changeIngenieursSonAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let auteur of detail.ingenieursSon\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\"></div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"ingenieurSonSiValide{{auteur.productionArtisteId}}\\\"\\r\\n                  [(ngModel)]=\\\"auteur.siValide\\\" name=\\\"ingenieurSonSiValide{{auteur.productionArtisteId}}\\\" (change)=\\\"changeIngenieursSonUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"ingenieurSonNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"ingenieurSonNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(auteur.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"auteur.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div [hidden]=\\\"!auteur.siAuteurInconnu || auteur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Auteur inconnu : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-personne-simple [(value)]=\\\"auteur.nom\\\" [siAffiche]=\\\"auteur.siAuteurInconnu && !auteur.siDelete\\\" id=\\\"ingenieurSonNom2Nom{{auteur.productionArtisteId}}\\\"\\r\\n          (actionRetour)=\\\"auteur.personneId=$event;auteur.siAuteurInconnu=false\\\" (onKeyUpNomPrenom)=\\\"auteur.nom=$event;\\\">\\r\\n        </p-create-personne-simple>\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siIngenieursSonIdValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n        (click)=\\\"addIngenieurSon();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Conception visuelle\\\" siAllLigne=\\\"true\\\" forLabel=\\\"conceptionVisuelle\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siConceptionVisuelleIdValide\\\" [(valueCheckBox)]=\\\"detail.siConceptionVisuelleIdValide\\\"\\r\\n            (actionRetour)=\\\"changeConceptionVisuelleAllValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div *ngFor=\\\"let auteur of detail.conceptionVisuelle\\\">\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-5\\\">\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"conceptionVisuSiValide{{auteur.productionArtisteId}}\\\"\\r\\n                  [(ngModel)]=\\\"auteur.siValide\\\" name=\\\"conceptionVisuSiValide{{auteur.productionArtisteId}}\\\" (change)=\\\"changeConceptionVisuelleUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"conceptionVisuelleNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\"\\r\\n                  [(valueId)]=\\\"auteur.personneId\\\" (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"conceptionVisuelleNom{{auteur.productionArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\"\\r\\n                  [(valueId)]=\\\"auteur.personneId\\\" (actionRetour)=\\\"auteur.siChange=true;\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\"\\r\\n                  [siInput]=\\\"getSiInputMode(auteur.siValide)\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i *ngIf=\\\"getSiInputMode(auteur.siValide)\\\" class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"auteur.siDelete=true;siSubmit=false\\\"\\r\\n                  title=\\\"Supprimer\\\"></i>\\r\\n\\r\\n              </div>\\r\\n            </div>\\r\\n\\r\\n          </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n        <div [hidden]=\\\"!auteur.siAuteurInconnu || auteur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n          Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en créer\\r\\n          une.\\r\\n          <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n        </div>\\r\\n        <p-create-personne-simple [(value)]=\\\"auteur.nom\\\" [siAffiche]=\\\"auteur.siAuteurInconnu && !auteur.siDelete\\r\\n           \\\"\\r\\n          id=\\\"conceptionVisuelleNom2Nom{{auteur.productionArtisteId}}\\\" (actionRetour)=\\\"auteur.personneId=$event;auteur.siAuteurInconnu=false\\\"\\r\\n          (onKeyUpNomPrenom)=\\\"auteur.nom=$event;\\\">\\r\\n        </p-create-personne-simple>\\r\\n      </div>\\r\\n      <i *ngIf=\\\"getSiInputMode(detail.siConceptionVisuelleIdValide)\\\" class=\\\"fa fa-plus-square fa-lg\\r\\n           \\\"\\r\\n        aria-hidden=\\\"true\\\" (click)=\\\"addConceptionVisuelle();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Catégorie\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTypeCategorieIdValide\\r\\n           \\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTypeCategorieIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete [(value)]=\\\"detail.categorieLibelle\\\" [(valueId)]=\\\"detail.categorieId\\\" id=\\\"cateorrieAutoomplete\\r\\n           \\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeCategorieIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siTypeCategorieIdValide)\\\"\\r\\n            (actionRetourSiInconnu)=\\\"siCategorieIncony=$event\\\" typeObject=\\\"ALBUM_CATEGORIE\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-categorie-album-simple [(value)]=\\\"detail.categorieLibelle\\\" [siAffiche]=\\\"siCategorieIncony\\\" id=\\\"categorieCreate\\\"\\r\\n        (actionRetour)=\\\"detail.categorieId=$event;siCategorieIncony=false\\\">\\r\\n      </p-create-categorie-album-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Mots clefs\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siMotClefValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siMotClefValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"motClef\\\" [(value)]=\\\"detail.motClef\\\" [siInput]=\\\"getSiInputMode(detail.siMotClefValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siMotClefValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Couverture temporelle\\\" [siValidationMode]=\\\"siValidationPageMode\\r\\n          \\\" idCheckBox=\\\"siMotClefTemporelValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siMotClefTemporelValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"couvertureTemporelle\\\" [(value)]=\\\"detail.couvertureTemporelle\\r\\n           \\\" [siInput]=\\\"getSiInputMode(detail.siMotClefTemporelValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siMotClefTemporelValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <label for=\\\"personFirstname\\\" class=\\\"label1 label2\\\">mots clefs associés à l'époque couverte par l'album</label>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Genre\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTypeGenreIdValide\\r\\n           \\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTypeGenreIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete [(value)]=\\\"detail.genreLibelle\\\" [(valueId)]=\\\"detail.genreId\\\" id=\\\"genreIdeAutoomplete\\r\\n           \\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeGenreIdValide\\\" [siInput]=\\\"getSiInputMode(detail.siTypeGenreIdValide)\\\"\\r\\n            (actionRetourSiInconnu)=\\\"siGenreIncony=$event\\\" typeObject=\\\"TYPE_GENRE\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-genre-simple [(value)]=\\\"detail.genreLibelle\\\" [siAffiche]=\\\"siGenreIncony\\\" id=\\\"genreCreate\\r\\n           \\\"\\r\\n        (actionRetour)=\\\"detail.genreId=$event;siGenreIncony=false\\\">\\r\\n      </p-create-genre-simple>\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <p-label valueLabel=\\\"Contexte\\\" siAllLigne=\\\"true\\\" forLabel=\\\"contexte\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n        idCheckBox=\\\"siContexteValide\\\" [(valueCheckBox)]=\\\"detail.siContexteValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n      </p-label>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-input type=\\\"textarea\\\" id=\\\"contexte\\\" [(value)]=\\\"detail.contexte\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siContexteValide\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siContexteValide)\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\r\\n           \\\"\\r\\n        [siAllValid]=\\\"siAllValid\\\" [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n        [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n      </detail-message>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION' || mode=='MODIFICATION'\\\">\\r\\n        <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!albumForm.form.valid || !checkSiFormulaireValide()\\\">Sauvegarder</button>\\r\\n      </div>\\r\\n\\r\\n    </form>\\r\\n\\r\\n\\r\\n  </div>\\r\\n  <div class=\\\"col-lg-4\\\">\\r\\n\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n\\r\\n    <p-file [detail]=\\\"detail\\\" [siChangeFileValidAll]=\\\"siRecalculeFileChange\\\" [siValidationMode]=\\\"siValidationPageMode\\r\\n           \\\"\\r\\n      [siSubmitOk]=\\\"siSubmit&&siSubmitSuccess\\\" (addFileRetour)=\\\"fileNouveauList.push($event)\\\" (onChangeValidation)=\\\"changeAllUnitValid()\\\"\\r\\n      [siInputMode]=\\\"getSiInputMode(detail.siFilePresentAllValid)\\\"></p-file>\\r\\n    <div class=\\\"row\\\">\\r\\n      <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n        <hr>\\r\\n      </div>\\r\\n    </div>\\r\\n    <br>\\r\\n\\r\\n\\r\\n    <h3>\\r\\n      <strong>Aperçu</strong>\\r\\n    </h3>\\r\\n    <br>\\r\\n    <br>\\r\\n    <div class=\\\"row\\\">\\r\\n      <div class=\\\"apercuBlock\\\">\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>\\r\\n              <u>{{detail.titre}}</u>\\r\\n            </b>\\r\\n          </div>\\r\\n        </div>\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Groupe(s)</b>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <ul *ngFor=\\\"let a of detail.groupes\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!a.siDelete&&a.groupeId!=null&&a.groupeId>0\\\">\\r\\n              <li>\\r\\n                <a routerLink=\\\"/groupeDetail/{{a.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{a.nom}}</a>\\r\\n              </li>\\r\\n            </div>\\r\\n          </div>\\r\\n\\r\\n        </ul>\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Personne</b>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <ul *ngFor=\\\"let a of detail.auteurs\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!a.siDelete&&a.personneId!=null&&a.personneId>0\\\">\\r\\n              <li>\\r\\n                <a routerLink=\\\"/personneDetail/{{a.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{a.nom}}</a>\\r\\n              </li>\\r\\n            </div>\\r\\n          </div>\\r\\n        </ul>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Date : </b>\\r\\n            <span>{{detail.datePublication| format :'date2'}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Nombre de pistes : </b>\\r\\n            <span>{{detail.nbrPiste}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Durée : </b>\\r\\n            <span>{{detail.formatStr}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Supports : </b>\\r\\n            <span *ngFor=\\\"let sup of detail.support; let last=last\\\">\\r\\n              <span *ngIf=\\\"!sup.siDelete\\\">{{sup.libelle}}\\r\\n                <span *ngIf=\\\"!last\\\"> / </span>\\r\\n              </span>\\r\\n            </span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Mixage : </b>\\r\\n            <span>{{detail.mixageLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Mastering : </b>\\r\\n            <span>{{detail.masteringLibelle}}</span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Producteur artistique : </b>\\r\\n            <span>{{detail.producteurNom}}</span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Type : </b>\\r\\n            <span>{{detail.typeAlbumLibelle}}</span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Nom du studio : </b>\\r\\n            <span *ngFor=\\\"let st of detail.studio;let last = last\\\"><span *ngIf=\\\"!st.siDelete&&st.studioId!=null&&st.studioId>0\\\">{{st.libelle}}<span\\r\\n                  *ngIf=\\\"!last\\\">, </span></span></span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Ingénieurs du son : </b>\\r\\n            <span *ngFor=\\\"let st of detail.ingenieursSon;let last = last\\\">\\r\\n              <span *ngIf=\\\"!st.siDelete&&st.personneId!=null&&st.personneId>0\\\">\\r\\n                <a routerLink=\\\"/personneDetail/{{st.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{st.nom}}</a>\\r\\n                <span *ngIf=\\\"!last\\\">,</span>\\r\\n              </span>\\r\\n            </span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Distribution : </b>\\r\\n            <span>{{detail.distributeurNom}}</span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Conception visuelle : </b>\\r\\n            <span *ngFor=\\\"let st of detail.conceptionVisuelle;let last = last\\\"><span *ngIf=\\\"!st.siDelete&&st.personneId!=null&&st.personneId>0\\\"><a\\r\\n                  routerLink=\\\"/personneDetail/{{st.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{st.nom}}</a><span\\r\\n                  *ngIf=\\\"!last\\\">, </span></span></span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Label : </b>\\r\\n            <span>{{detail.editeurNom}}</span>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Catégorie : </b>\\r\\n            <span>{{detail.categorieLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Genre : </b>\\r\\n            <span>{{detail.genreLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Morceaux</b>\\r\\n          </div>\\r\\n        </div>\\r\\n        <ul *ngFor=\\\"let t of detail.tableMatiere\\\">\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"!t.siDelete&&t.morceauId!=null&&t.morceauId>0\\\">\\r\\n\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <li>\\r\\n\\r\\n                <a routerLink=\\\"/productionMorceauDetail/{{t.morceauId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\"><span\\r\\n                    *ngIf=\\\"t.numero!=null\\\">{{t.numero}}.</span> {{t.titre}}</a>\\r\\n              </li>\\r\\n            </div>\\r\\n          </div>\\r\\n        </ul>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Contexte </b>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\" *ngIf=\\\"detail.contexte!=null&&detail.contexte.length>0\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <span>{{detail.contexte}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n\\r\\n            <b>Fichiers joints</b>\\r\\n\\r\\n          </div>\\r\\n        </div>\\r\\n        <ul *ngFor=\\\"let f of detail.fileList\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!f.siDelete\\\">\\r\\n              <li><a routerLinkActive=\\\"active\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a></li>\\r\\n            </div>\\r\\n          </div>\\r\\n        </ul>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n\\r\\n  <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n  </div>\\r\\n\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/production-album-detail.component.html\n// module id = 1063\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'production'\\\"></navbar>\\r\\n\\r\\n\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n  <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n  </div>\\r\\n  <div class=\\\"col-lg-4\\\">\\r\\n    <div [hidden]=\\\"!(mode=='CREATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Création d'un morceau</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n    <div [hidden]=\\\"!(mode=='MODIFICATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Modification d'un morceau</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n    <div [hidden]=\\\"!(mode=='CONSULTATION')\\\">\\r\\n      <h3>\\r\\n        <strong>Consultation d'un morceau</strong>\\r\\n      </h3>\\r\\n    </div>\\r\\n\\r\\n    <br>\\r\\n    <br>\\r\\n\\r\\n    <form name=\\\"groupeForm\\\" (ngSubmit)=\\\"createOrUpdate()\\\" #morceauForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n      <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\"\\r\\n        [siAllValid]=\\\"siAllValid\\\" [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n        [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n      </detail-message>\\r\\n\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n        <div class=\\\"col-lg-1\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12 marginCheckBoxValidation1\\\">\\r\\n              <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"siMorceauAllValide\\\" [(ngModel)]=\\\"detail.siMorceauAllValide\\\"\\r\\n                name=\\\"siMorceauAllValide\\\" (change)=\\\"changeValidAll()\\\">\\r\\n            </div>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-11\\\">\\r\\n          <label for=\\\"nom\\\" class=\\\"label1\\\">Tout valider</label>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Titre\\\" forLabel=\\\"titre\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siNomValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siNomValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n          </p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"titre\\\" [(value)]=\\\"detail.titre\\\" [siInput]=\\\"getSiInputMode(detail.siNomValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siNomValide\\\" (actionRetour)=\\\"checkUniciteNomMorceau()\\\"\\r\\n            siRequired=\\\"true\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"nomMorceauSimilaireIdList != null && nomMorceauSimilaireIdList.length >0\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            Le titre saisies existent déjà.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            <br>Vous pouvez accéder à la fichie existante en cliquant içi\\r\\n            <a routerLink=\\\"/productionMorceauDetail/{{nomMorceauSimilaireIdList[0].id}}/MODIFICATION\\\" target=\\\"_blank\\\"\\r\\n              routerLinkActive=\\\"active\\\">\\r\\n              <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder au morceau avec le même nom\\\"></i>\\r\\n            </a>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Groupe\\\" forLabel=\\\"groupe\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siGroupeAllValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siGroupeAllValide\\\" (actionRetour)=\\\"changeGroupeAllValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <div *ngFor=\\\"let g of detail.groupes\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"g.siDelete\\\" (change)=\\\"g.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"groupeSiValid{{g.morceauGroupeId}}\\\" [(ngModel)]=\\\"g.siValide\\\"\\r\\n                  name=\\\"groupeSiValid{{g.morceauGroupeId}}\\\" (change)=\\\"changeGroupeUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"groupeNom{{g.morceauGroupeId}}\\\" [(value)]=\\\"g.nom\\\" [(valueId)]=\\\"g.groupeId\\\"\\r\\n                  (actionRetour)=\\\"g.siChange=true;\\\" [siInput]=\\\"getSiInputMode(g.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!g.siValide\\\"\\r\\n                  (actionRetourSiInconnu)=\\\"g.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\">\\r\\n                </p-auto-complete>\\r\\n\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"groupeNom{{g.morceauGroupeId}}\\\" [(value)]=\\\"g.nom\\\" [(valueId)]=\\\"g.groupeId\\\"\\r\\n                  (actionRetour)=\\\"g.siChange=true;\\\" [siInput]=\\\"getSiInputMode(g.siValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!g.siValide\\\"\\r\\n                  (actionRetourSiInconnu)=\\\"g.siGroupeInconnu=$event\\\" typeObject=\\\"GROUPE_NOM\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"g.siDelete=true;siSubmit=false\\\"\\r\\n                  *ngIf=\\\"getSiInputMode(g.siValide)\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!g.siGroupeInconnu || g.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n              Groupe inconnue : si aucune propostion de groupe correspondant à votre saisie n'apparait, veuillez en\\r\\n              créer une.\\r\\n              <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n            <p-create-groupe-simple [(value)]=\\\"g.nom\\\" [siAffiche]=\\\"g.siGroupeInconnu && !g.siDelete\\\" id=\\\"groupe2Nom{{g.morceauGroupeId}}\\\"\\r\\n              (actionRetour)=\\\"g.groupeId=$event;g.siGroupeInconnu=false\\\">\\r\\n            </p-create-groupe-simple>\\r\\n          </div>\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siGroupeAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addGroupe();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n      <br>\\r\\n      <label>Albums</label>\\r\\n      <div *ngFor=\\\"let album of detail.albums\\\" class=\\\"\\\">\\r\\n        <div *ngIf=\\\"!album.siDelete\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-5\\\">\\r\\n              <p-label valueLabel=\\\"Titre d'album\\\" forLabel=\\\"titreAlbum\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siAlbumIdValide\\\" [(valueCheckBox)]=\\\"album.siAlbumIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-7\\\">\\r\\n              <p-auto-complete [(value)]=\\\"album.albumNom\\\" [(valueId)]=\\\"album.albumId\\\" id=\\\"albumNom\\\" [siInput]=\\\"getSiInputMode(album.siAlbumIdValide)\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!album.siAlbumIdValide\\\" (actionRetourSiInconnu)=\\\"siAlbumInconnu=$event\\\"\\r\\n                typeObject=\\\"ALBUM_NOM\\\"> </p-auto-complete>\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row\\\" [hidden]=\\\"!siAlbumInconnu\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <div class=\\\"alert alert-danger\\\">\\r\\n                Album inconnue : si aucune propostion d'album correspondant à votre saisie n'apparait, veuillez en\\r\\n                créer une.\\r\\n                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n          <p-create-album-simple [(value)]=\\\"album.albumNom\\\" [siAffiche]=\\\"siAlbumInconnu\\\" id=\\\"albumNom2\\\" (actionRetour)=\\\"album.albumId=$event;siAlbumInconnu=false;album.numeroPisteAlbum=null\\\">\\r\\n          </p-create-album-simple>\\r\\n\\r\\n          <div class=\\\"row\\\" [hidden]=\\\"siAlbumInconnu || album.albumId==null\\\">\\r\\n            <div class=\\\"col-lg-5\\\">\\r\\n              <p-label valueLabel=\\\"Position du titre dans l'album\\\" forLabel=\\\"positionAlbum\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n                idCheckBox=\\\"siNumeroPisteValide\\\" [(valueCheckBox)]=\\\"album.siNumeroPisteValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\">\\r\\n              </p-label>\\r\\n            </div>\\r\\n            <div class=\\\"col-lg-7\\\">\\r\\n              <p-input type=\\\"numeroPiste\\\" id=\\\"numeroPisteAlbum\\\" [(value)]=\\\"album.numeroPisteAlbum\\\" [siInput]=\\\"getSiInputMode(album.siNumeroPisteValide)\\\"\\r\\n                [siValidationAndNonValid]=\\\"siValidationPageMode&&!album.siNumeroPisteValide\\\" (actionRetour)=\\\"changeNumeroPiste()\\\"\\r\\n                [nbrCharMaxNumber]=\\\"5\\\"></p-input>\\r\\n            </div>\\r\\n\\r\\n          </div>\\r\\n\\r\\n          <div class=\\\"row\\\" [hidden]=\\\"siAlbumInconnu || !siNumPisteAndNotAlbumId\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <div class=\\\"alert alert-danger\\\">\\r\\n                Un album est nécessaire pour entrer une position dans l'album.\\r\\n                <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n          </div>\\r\\n          <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"album.siDelete=true;siSubmit=false\\\"></i>\\r\\n        </div>\\r\\n\\r\\n      </div>\\r\\n      <i class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\" (click)=\\\"addAlbum()\\\" title=\\\"Ajouter\\\"> </i>\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"siNumeroPisteSuperieurNbrPisteAlbum\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            La position du titre dans l'album est supérieur au nombre de piste de l'album.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i> Vous pouvez accéder à la fiche de l'album\\r\\n            en cliquant içi\\r\\n            <a routerLink=\\\"/productionAlbumDetail/{{albumCourant.productionAlbumId}}/MODIFICATION\\\" target=\\\"_blank\\\"\\r\\n              routerLinkActive=\\\"active\\\">\\r\\n              <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder à la fiche de l'album\\\"></i>\\r\\n            </a>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"siNumeroPisteDejaUtilisePourAlbum\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <div class=\\\"alert alert-danger\\\">\\r\\n            La position du titre dans l'album est déjà utilisée.\\r\\n            <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i> Vous pouvez accéder à la fiche de l'album\\r\\n            en cliquant içi\\r\\n            <a routerLink=\\\"/productionAlbumDetail/{{albumCourant.productionAlbumId}}/MODIFICATION\\\" target=\\\"_blank\\\"\\r\\n              routerLinkActive=\\\"active\\\">\\r\\n              <i class=\\\"fa fa-search fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Accéder à la fiche de l'album\\\"></i>\\r\\n            </a>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Compositeurs\\\" forLabel=\\\"compositeurs\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siCompositeurAllValide\\\" [(valueCheckBox)]=\\\"detail.siCompositeurAllValide\\\" (actionRetour)=\\\"changeCompositeurAllValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <div *ngFor=\\\"let compositeur of detail.compositeurs\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"compositeur.siDelete\\\" (change)=\\\"compositeur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"compositeurSiValid{{compositeur.morceauArtisteId}}\\\" [(ngModel)]=\\\"compositeur.siValide\\\"\\r\\n                  name=\\\"compositeurSiValid{{compositeur.morceauArtisteId}}\\\" (change)=\\\"changeCompositeurUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"compositeurNom{{compositeur.morceauArtisteId}}\\\" [(value)]=\\\"compositeur.nom\\\" [(valueId)]=\\\"compositeur.personneId\\\"\\r\\n                  (actionRetour)=\\\"compositeur.siChange=true;\\\" [siInput]=\\\"getSiInputMode(compositeur.siValide)\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!compositeur.siValide\\\" (actionRetourSiInconnu)=\\\"compositeur.siCompositeurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                </p-auto-complete>\\r\\n\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"compositeurNom{{compositeur.morceauArtisteId}}\\\" [(value)]=\\\"compositeur.nom\\\" [(valueId)]=\\\"compositeur.personneId\\\"\\r\\n                  (actionRetour)=\\\"compositeur.siChange=true;\\\" [siInput]=\\\"getSiInputMode(compositeur.siValide)\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!compositeur.siValide\\\" (actionRetourSiInconnu)=\\\"compositeur.siCompositeurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"compositeur.siDelete=true;siSubmit=false\\\"\\r\\n                  *ngIf=\\\"getSiInputMode(compositeur.siValide)\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!compositeur.siCompositeurInconnu || compositeur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n              Compositeur inconnu : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en\\r\\n              créer une.\\r\\n              <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n            <p-create-personne-simple [(value)]=\\\"compositeur.nom\\\" [siAffiche]=\\\"compositeur.siCompositeurInconnu && !compositeur.siDelete\\\"\\r\\n              id=\\\"compositeur2Nom{{compositeur.morceauArtisteId}}\\\" (actionRetour)=\\\"compositeur.personneId=$event;compositeur.siCompositeurInconnu=false\\\">\\r\\n            </p-create-personne-simple>\\r\\n          </div>\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siCompositeurAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addCompositeur();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Date de composition\\\" forLabel=\\\"dateComposition\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siDateCompositionValide\\\" [(valueCheckBox)]=\\\"detail.siDateCompositionValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n          <p-input type=\\\"date2\\\" id=\\\"dateComposition\\\" [(value)]=\\\"detail.dateComposition\\\" [siInput]=\\\"getSiInputMode(detail.siDateCompositionValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDateCompositionValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Date de 1er enregistrement\\\" forLabel=\\\"dateEnregistrement\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siDatePremierEnregistrementValide\\\" [(valueCheckBox)]=\\\"detail.siDatePremierEnregistrementValide\\\"\\r\\n            (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n          <p-input type=\\\"date2\\\" id=\\\"dateEnregistrement\\\" [(value)]=\\\"detail.datePremierEnregistrement\\\" [siInput]=\\\"getSiInputMode(detail.siDatePremierEnregistrementValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDatePremierEnregistrementValide\\\"></p-input>\\r\\n\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Date de 1er publication\\\" forLabel=\\\"datePublication\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siDatePremierePublicationValide\\\" [(valueCheckBox)]=\\\"detail.siDatePremierePublicationValide\\\"\\r\\n            (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7 form-inline\\\">\\r\\n          <p-input type=\\\"date2\\\" id=\\\"datePublication\\\" [(value)]=\\\"detail.datePremierePublication\\\" [siInput]=\\\"getSiInputMode(detail.siDatePremierePublicationValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDatePremierePublicationValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Durée\\\" forLabel=\\\"format\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siDureeValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siDureeValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"formatStr\\\" [(value)]=\\\"detail.formatStr\\\" [siInput]=\\\"getSiInputMode(detail.siDureeValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDureeValide\\\" placeholder=\\\"20m50\\\" pattern=\\\"^(?:(\\\\d{1,2})(?:(m|M)|\\\\.){0,1})(?:(\\\\d{1,2}){0,1})(?:(s|S|)|\\\\.)$\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Description\\\" siAllLigne=\\\"true\\\" forLabel=\\\"description\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siDescriptionValide\\\" [(valueCheckBox)]=\\\"detail.siDescriptionValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-input type=\\\"textarea\\\" id=\\\"description\\\" [(value)]=\\\"detail.description\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siDescriptionValide\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siDescriptionValide)\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Tonalité\\\" forLabel=\\\"tonalite\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siTypeTonaliteIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siTypeTonaliteIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete [(value)]=\\\"detail.typeTonnaliteLibelle\\\" [(valueId)]=\\\"detail.typeTonaliteId\\\" id=\\\"typeTonalite\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siTypeTonaliteIdValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siTypeTonaliteIdValide\\\"\\r\\n            typeObject=\\\"TONALITE\\\" (actionRetourSiInconnu)=\\\"siTonaliteInconnu=$event\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-tonalite-simple [(value)]=\\\"detail.typeTonnaliteLibelle\\\" [siAffiche]=\\\"siTonaliteInconnu\\\" id=\\\"typeTonaliteCreate\\\"\\r\\n        (actionRetour)=\\\"detail.typeTonaliteId=$event;siTonaliteInconnu=false\\\">\\r\\n      </p-create-tonalite-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"BPM\\\" forLabel=\\\"bpm\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siBpmValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siBpmValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"number\\\" id=\\\"bpm\\\" [(value)]=\\\"detail.bpm\\\" [siInput]=\\\"getSiInputMode(detail.siBpmValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siBpmValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Structure du morceau\\\" forLabel=\\\"strucMorceau\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siStructureValide\\\" [(valueCheckBox)]=\\\"detail.siStructureValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-input type=\\\"text\\\" id=\\\"structureMorceau\\\" [(value)]=\\\"detail.structureMorceau\\\" [siInput]=\\\"getSiInputMode(detail.siStructureValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siStructureValide\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Organologie\\\" forLabel=\\\"organologie\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siOrganologieValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siOrganologieValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n          <p-auto-complete [(value)]=\\\"detail.typeOrganologieLibelle\\\" [(valueId)]=\\\"detail.typeOrganologieId\\\" id=\\\"typeOrganologieId\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siOrganologieValide)\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siOrganologieValide\\\"\\r\\n            typeObject=\\\"ORGANOLOGIE\\\" (actionRetourSiInconnu)=\\\"siOrganologieInconnu=$event\\\"> </p-auto-complete>\\r\\n\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-organologie-simple [(value)]=\\\"detail.typeOrganologieLibelle\\\" [siAffiche]=\\\"siOrganologieInconnu\\\" id=\\\"typeOrganologieCreate\\\"\\r\\n        (actionRetour)=\\\"detail.typeOrganologieId=$event;siOrganologieInconnu=false\\\">\\r\\n      </p-create-organologie-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Auteur(s) du texte\\\" forLabel=\\\"auteur\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siAuteurAllValide\\\" [(valueCheckBox)]=\\\"detail.siAuteurAllValide\\\" (actionRetour)=\\\"changeAuteurAllValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <div *ngFor=\\\"let auteur of detail.auteurs\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"auteur.siDelete\\\" (change)=\\\"auteur.siChange=true\\\">\\r\\n              <div class=\\\"col-lg-1\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <input type=\\\"checkbox\\\" class=\\\"form-control\\\" id=\\\"auteurSiValid{{auteur.morceauArtisteId}}\\\" [(ngModel)]=\\\"auteur.siValide\\\"\\r\\n                  name=\\\"auteurSiValid{{auteur.morceauArtisteId}}\\\" (change)=\\\"changeAuteurUnitValid()\\\">\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-9\\\" *ngIf=\\\"siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"auteurNom{{auteur.morceauArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" [siInput]=\\\"getSiInputMode(auteur.siValide)\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                </p-auto-complete>\\r\\n\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-10\\\" *ngIf=\\\"!siValidationPageMode\\\">\\r\\n                <p-auto-complete id=\\\"auteurNom{{auteur.morceauArtisteId}}\\\" [(value)]=\\\"auteur.nom\\\" [(valueId)]=\\\"auteur.personneId\\\"\\r\\n                  (actionRetour)=\\\"auteur.siChange=true;\\\" [siInput]=\\\"getSiInputMode(auteur.siValide)\\\"\\r\\n                  [siValidationAndNonValid]=\\\"siValidationPageMode&&!auteur.siValide\\\" (actionRetourSiInconnu)=\\\"auteur.siAuteurInconnu=$event\\\"\\r\\n                  typeObject=\\\"PERSONNE_NOM_PRENOM\\\">\\r\\n                </p-auto-complete>\\r\\n              </div>\\r\\n              <div class=\\\"col-lg-2\\\">\\r\\n                <i class=\\\"fa fa-minus-square fa-lg\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\" (click)=\\\"auteur.siDelete=true;siSubmit=false\\\"\\r\\n                  *ngIf=\\\"getSiInputMode(auteur.siValide)\\\"></i>\\r\\n              </div>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"!auteur.siAuteurInconnu || auteur.siDelete\\\" class=\\\"alert alert-danger\\\">\\r\\n              Auteur inconnue : si aucune propostion de personne correspondant à votre saisie n'apparait, veuillez en\\r\\n              créer une.\\r\\n              <i class=\\\"fa fa-exclamation-circle fa-lg\\\" aria-hidden=\\\"true\\\"></i>\\r\\n            </div>\\r\\n            <p-create-personne-simple [(value)]=\\\"auteur.nom\\\" [siAffiche]=\\\"auteur.siAuteurInconnu && !auteur.siDelete\\\"\\r\\n              id=\\\"auteur2Nom{{auteur.morceauArtisteId}}\\\" (actionRetour)=\\\"auteur.personneId=$event;auteur.siAuteurInconnu=false\\\">\\r\\n            </p-create-personne-simple>\\r\\n          </div>\\r\\n          <i *ngIf=\\\"getSiInputMode(detail.siAuteurAllValide)\\\" class=\\\"fa fa-plus-square fa-lg\\\" aria-hidden=\\\"true\\\"\\r\\n            (click)=\\\"addAuteur();siSubmit=false\\\" title=\\\"Ajouter\\\"> </i>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n      <br>\\r\\n      <br>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-5\\\">\\r\\n          <p-label valueLabel=\\\"Langue\\\" forLabel=\\\"langue\\\" [siValidationMode]=\\\"siValidationPageMode\\\" idCheckBox=\\\"siLangueIdValide\\\"\\r\\n            [(valueCheckBox)]=\\\"detail.siLangueIdValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\">\\r\\n          <p-auto-complete id=\\\"langue\\\" [(value)]=\\\"detail.langueLibelle\\\" [(valueId)]=\\\"detail.langueId\\\" [siInput]=\\\"getSiInputMode(detail.siLangueIdValide)\\\"\\r\\n            [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siLangueIdValide\\\" typeObject=\\\"LANGUE\\\"\\r\\n            (actionRetourSiInconnu)=\\\"siLangueInconnu=$event\\\">\\r\\n          </p-auto-complete>\\r\\n        </div>\\r\\n      </div>\\r\\n      <p-create-langue-simple [(value)]=\\\"detail.langueLibelle\\\" [siAffiche]=\\\"siLangueInconnu\\\" id=\\\"langueCreate\\\"\\r\\n        (actionRetour)=\\\"detail.langueId=$event;siLangueInconnu=false\\\">\\r\\n      </p-create-langue-simple>\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-label valueLabel=\\\"Paroles\\\" siAllLigne=\\\"true\\\" forLabel=\\\"parole\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n            idCheckBox=\\\"siParoleValide\\\" [(valueCheckBox)]=\\\"detail.siParoleValide\\\" (actionRetour)=\\\"changeAllUnitValid()\\\"></p-label>\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12\\\">\\r\\n          <p-input type=\\\"textarea\\\" id=\\\"parole\\\" [(value)]=\\\"detail.parole\\\" [siValidationAndNonValid]=\\\"siValidationPageMode&&!detail.siParoleValide\\\"\\r\\n            [siInput]=\\\"getSiInputMode(detail.siParoleValide)\\\" [nbrCharMaxArea]=\\\"5000\\\"></p-input>\\r\\n        </div>\\r\\n      </div>\\r\\n\\r\\n\\r\\n      <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n          <hr>\\r\\n        </div>\\r\\n      </div>\\r\\n      <br>\\r\\n\\r\\n      <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"siValidationPageMode\\\"\\r\\n        [siAllValid]=\\\"siAllValid\\\" [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\" [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\"\\r\\n        [siPropositionCreateCompteUtilisateur]=\\\"siPropositionCreateCompteUtilisateur\\\">\\r\\n      </detail-message>\\r\\n\\r\\n      <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION' || mode=='MODIFICATION'\\\">\\r\\n        <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!morceauForm.form.valid ||!checkSiFormulaireValide() \\\">Sauvegarder</button>\\r\\n      </div>\\r\\n    </form>\\r\\n\\r\\n\\r\\n  </div>\\r\\n  <div class=\\\"col-lg-4\\\">\\r\\n\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n    <br>\\r\\n    <p-file [detail]=\\\"detail\\\" [siChangeFileValidAll]=\\\"siRecalculeFileChange\\\" [siValidationMode]=\\\"siValidationPageMode\\\"\\r\\n      [siSubmitOk]=\\\"siSubmit&&siSubmitSuccess\\\" (addFileRetour)=\\\"fileNouveauList.push($event)\\\" (onChangeValidation)=\\\"changeAllUnitValid()\\\"\\r\\n      [siInputMode]=\\\"getSiInputMode(detail.siFilePresentAllValid)\\\"></p-file>\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n      <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n        <hr>\\r\\n      </div>\\r\\n    </div>\\r\\n    <br>\\r\\n\\r\\n\\r\\n    <h3>\\r\\n      <strong>Aperçu</strong>\\r\\n    </h3>\\r\\n    <br>\\r\\n    <br>\\r\\n    <div class=\\\"row\\\">\\r\\n      <div class=\\\"apercuBlock\\\">\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>\\r\\n              <u>{{detail.titre}}</u>\\r\\n            </b>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Album :</b>\\r\\n            <span>\\r\\n              <div *ngFor=\\\"let album of detail.albums\\\" class=\\\"\\\">\\r\\n                <a *ngIf=\\\"!album.siDelete\\\" routerLink=\\\"/productionAlbumDetail/{{album.albumId}}/MODIFICATION\\\" target=\\\"_blank\\\"\\r\\n                  routerLinkActive=\\\"active\\\">{{album.albumNom}}</a>\\r\\n              </div>\\r\\n            </span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Description</b>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <span>{{detail.description}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Compositeur :</b>\\r\\n          </div>\\r\\n          <ul *ngFor=\\\"let compositeur of detail.compositeurs\\\">\\r\\n            <div class=\\\"row\\\" *ngIf=\\\"!compositeur.siDelete&&compositeur.personneId!=null&&compositeur.personneId>0\\\">\\r\\n              <div class=\\\"col-lg-12\\\">\\r\\n                <li><a routerLink=\\\"/personneDetail/{{compositeur.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{compositeur.nom}}</a></li>\\r\\n              </div>\\r\\n            </div>\\r\\n  \\r\\n  \\r\\n          </ul>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Groupe(s) Musique</b>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <ul *ngFor=\\\"let groupe of detail.groupes\\\">\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"!groupe.siDelete&&groupe.groupeId!=null&&groupe.groupeId>0\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <li><a routerLink=\\\"/groupeDetail/{{groupe.groupeId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{groupe.nom}}</a></li>\\r\\n            </div>\\r\\n          </div>\\r\\n\\r\\n\\r\\n        </ul>\\r\\n        <br>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Auteur(s) Musique</b>\\r\\n          </div>\\r\\n\\r\\n        </div>\\r\\n        <ul *ngFor=\\\"let auteur of detail.auteurs\\\">\\r\\n          <div class=\\\"row\\\" *ngIf=\\\"!auteur.siDelete&&auteur.personneId!=null&&auteur.personneId>0\\\">\\r\\n            <div class=\\\"col-lg-12\\\">\\r\\n              <li><a routerLink=\\\"/personneDetail/{{auteur.personneId}}/MODIFICATION\\\" target=\\\"_blank\\\" routerLinkActive=\\\"active\\\">{{auteur.nom}}</a></li>\\r\\n            </div>\\r\\n          </div>\\r\\n\\r\\n\\r\\n        </ul>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Date de composition : </b><span>{{detail.dateComposition| format :'date2'}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Date de 1er enregistrement (cas du live) : </b><span>{{detail.datePremierEnregistrement| format :'date2'\\r\\n              }}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Date de 1ère publication : </b><span>{{detail.datePremierePublication| format :'date2'}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Durée : </b><span>{{detail.formatStr}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <b>Tonalité : </b><span>{{detail.typeTonnaliteLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <strong>BPM :</strong><span>{{detail.bpm}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <strong>Structure du morceau : </strong><span>{{detail.structureMorceau}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <strong>Organologie : </strong><span>{{detail.typeOrganologieLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <strong>Langue : </strong><span>{{detail.langueLibelle}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <strong>Paroles</strong>\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\" *ngIf=\\\"detail.parole!=null&&detail.parole.length>0\\\">\\r\\n          <div class=\\\"col-lg-12\\\" style=\\\"margin-left: 20px;\\\">\\r\\n            <span *ngIf=\\\"!siAfficheAllParole\\\" class=\\\"line-breaker\\\">{{getParoleCourt()}}</span>\\r\\n            <span *ngIf=\\\"siAfficheAllParole\\\" class=\\\"line-breaker\\\">{{detail.parole}}</span>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\" *ngIf=\\\"detail.parole!=null&&detail.parole.length>0\\\">\\r\\n          <div class=\\\"col-lg-6\\\">\\r\\n          </div>\\r\\n          <div class=\\\"col-lg-6\\\">\\r\\n            <button *ngIf=\\\"!siAfficheAllParole\\\" id=\\\"changeAfficheParole\\\" class=\\\"btn button-petit\\\" type=\\\"button\\\" (click)=\\\"siAfficheAllParole=true\\\">Afficher\\r\\n              toutes les paroles</button>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n\\r\\n            <b>Fichiers joints</b>\\r\\n\\r\\n          </div>\\r\\n        </div>\\r\\n        <ul *ngFor=\\\"let f of detail.fileList\\\">\\r\\n          <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-12\\\" *ngIf=\\\"!f.siDelete\\\">\\r\\n              <li><a routerLinkActive=\\\"active\\\" (click)=\\\"downlaodFile(f)\\\">{{f.nom}}</a></li>\\r\\n            </div>\\r\\n          </div>\\r\\n        </ul>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12 ligneTiret ligneTiretSize\\\">\\r\\n            <hr>\\r\\n          </div>\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n          <div class=\\\"col-lg-12\\\">\\r\\n            <p-detail-info-utilisateur [createur]=\\\"detail.createur\\\" [modificateurList]=\\\"detail.modificateurList\\\"\\r\\n              [siPersonneInterne]=\\\"user.profil == 'SUPER_ADMINISTRATEUR' || user.profil == 'CHERCHEUR'\\\"></p-detail-info-utilisateur>\\r\\n          </div>\\r\\n        </div>\\r\\n        <br>\\r\\n\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n  <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n  </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/production-morceau-detail.component.html\n// module id = 1064\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'production'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-8\\\">\\r\\n            <br><br>\\r\\n            <!--\\r\\n    <br><br>\\r\\n\\r\\n    <h3><strong>Créer une nouvelle production :</strong></h3>\\r\\n        <div class=\\\"row form-group\\\">\\r\\n            <label for=\\\"inputType\\\" class=\\\"col-md-1 label1\\\" style=\\\"padding-top: 8px;\\\">Choisir</label>\\r\\n            <select class=\\\"form-control\\\" id=\\\"typeRole\\\"\\r\\n                [(ngModel)]=\\\"createTypeProductionCode\\\" name=\\\"typeRole\\\" style=\\\"width:226px\\\"\\r\\n                #typeRole=\\\"ngModel\\\" >\\r\\n                <option [value]=\\\"\\\"></option>\\r\\n                <option *ngFor=\\\"let tl of typeProductionList\\\" [value]=\\\"tl.code\\\">{{tl.libelle}}</option>\\r\\n            </select>\\r\\n        </div>\\r\\n    <br><br>\\r\\n-->\\r\\n            <a *ngIf=\\\"siDroitAccessCreate\\\" routerLink=\\\"/productionAlbumDetail/0/CREATION\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button\\\" class=\\\"btn pull-right button-creer\\\" >Créer un album </button></a>\\r\\n            <a *ngIf=\\\"siDroitAccessCreate\\\" routerLink=\\\"/productionMorceauDetail/0/CREATION\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button\\\" class=\\\"btn pull-right button-creer\\\" >Créer un morceau </button></a>\\r\\n            <br><br>\\r\\n            <h3><strong>Modifier une production déjà existante : </strong></h3>\\r\\n            <form (ngSubmit)=\\\"onSubmit()\\\" #productionList=\\\"ngForm\\\" class=\\\"searchCritere\\\">\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Je cherche : </label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <select class=\\\"form-control\\\" id=\\\"typeRole\\\" required (change)=\\\"changeTypeProduction()\\\" [(ngModel)]=\\\"search.typeProductionCode\\\"\\r\\n                            name=\\\"typeRole\\\" #typeRole=\\\"ngModel\\\">\\r\\n                            <option [value]=\\\"\\\"></option>\\r\\n                            <option *ngFor=\\\"let tl of typeProductionList\\\" [value]=\\\"tl.code\\\">{{tl.libelle}}</option>\\r\\n                        </select>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"search.typeProductionCode!='MORCEAU'\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Titre morceau</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"titreMorceau\\\" [(ngModel)]=\\\"search.titreMorceau\\\" name=\\\"titreMorceau\\\" #titreMorceau=\\\"ngModel\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\" [hidden]=\\\"search.typeProductionCode!='ALBUM'\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Titre album</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"titreAlbum\\\" [(ngModel)]=\\\"search.titreAlbum\\\" name=\\\"titreAlbum\\\" #titreAlbum=\\\"ngModel\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Publié entre</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <p-input type=\\\"date\\\" id=\\\"datePublicationIn\\\" [(value)]=\\\"search.datePublicationIn\\\"></p-input>\\r\\n                        <!--<my-date-picker name=\\\"datePublicationIn\\\" id=\\\"datePublicationIn\\\"\\r\\n                   (dateChanged)=\\\"onDateChanged($event,'IN')\\\"  ></my-date-picker> -->\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-1\\\">\\r\\n                        <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">et</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-3\\\">\\r\\n                        <p-input type=\\\"date\\\" id=\\\"datePublicationOut\\\" [(value)]=\\\"search.datePublicationOut\\\"></p-input>\\r\\n                        <!--<my-date-picker name=\\\"datePublicationOut\\\" id=\\\"datePublicationOut\\\"\\r\\n                   (dateChanged)=\\\"onDateChanged($event,'OUT')\\\"></my-date-picker> -->\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-8\\\">\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <button type=\\\"button\\\" class=\\\"btn button-reset\\\" (click)=\\\"reset()\\\">Reset</button>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-2\\\">\\r\\n                        <button type=\\\"submit\\\" class=\\\"btn button-search\\\" [disabled]=\\\"!productionList.form.valid\\\">Rechercher</button>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n\\r\\n                <!--\\r\\n    <div>\\r\\n        <br>\\r\\n        <div class=\\\"row form-group\\\" style=\\\"margin-left: 10px\\\">\\r\\n            <label for=\\\"inputType\\\" class=\\\"col-md-2 control-label label1\\\" style=\\\"padding-top: 8px;width: 130px\\\">Je cherche</label>\\r\\n            <div class=\\\"col-md-3\\\">\\r\\n                <select class=\\\"form-control\\\" id=\\\"typeRole\\\" required\\r\\n                    [(ngModel)]=\\\"search.typeProductionCode\\\" name=\\\"typeRole\\\" style=\\\"width:226px\\\"\\r\\n                    #typeRole=\\\"ngModel\\\" >\\r\\n                    <option [value]=\\\"\\\"></option>\\r\\n                    <option *ngFor=\\\"let tl of typeProductionList\\\" [value]=\\\"tl.code\\\">{{tl.libelle}}</option>\\r\\n                </select>\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row form-group\\\" style=\\\"margin-left: 10px\\\" [hidden]=\\\"search.typeProductionCode!='MORCEAU'\\\">\\r\\n            <label for=\\\"inputType\\\" class=\\\"col-md-1 control-label label1\\\" style=\\\"padding-top: 8px;width: 130px\\\">Titre morceau</label>\\r\\n            <div class=\\\"col-md-3\\\">\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"titreMorceau\\\" [(ngModel)]=\\\"search.titreMorceau\\\" name=\\\"titreMorceau\\\" #titreMorceau=\\\"ngModel\\\" style=\\\"width:226px\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row form-group\\\" style=\\\"margin-left: 10px\\\" [hidden]=\\\"search.typeProductionCode!='ALBUM'\\\">\\r\\n            <label for=\\\"inputType\\\" class=\\\"col-md-1 control-label label1\\\" style=\\\"padding-top: 8px;width: 130px\\\">Titre morceau</label>\\r\\n            <div class=\\\"col-md-3\\\">\\r\\n                <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"titreAlbum\\\" [(ngModel)]=\\\"search.titreAlbum\\\" name=\\\"titreAlbum\\\" #titreAlbum=\\\"ngModel\\\" style=\\\"width:226px\\\">\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row form-group\\\" style=\\\"margin-left: 10px\\\">\\r\\n            <div class=\\\"col-md-3\\\" style=\\\"width: 140px\\\">\\r\\n                <label for=\\\"titre\\\" style=\\\"padding-top: 8px\\\" class=\\\"label1\\\">Publié entre</label>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-3\\\" style=\\\"width: 180px\\\"  >\\r\\n                <div  >\\r\\n                <my-date-picker name=\\\"datePublicationIn\\\" id=\\\"datePublicationIn\\\"\\r\\n                   (dateChanged)=\\\"onDateChanged($event,'IN')\\\"  ></my-date-picker>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-1\\\">\\r\\n                <label for=\\\"titre\\\" style=\\\"padding-top: 8px;margin-left: -15px\\\" class=\\\"label1\\\"> et </label>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-3\\\" style=\\\"width: 180px;margin-left: -80px\\\">\\r\\n                <my-date-picker name=\\\"datePublicationOut\\\" id=\\\"datePublicationOut\\\"\\r\\n                   (dateChanged)=\\\"onDateChanged($event,'OUT')\\\"></my-date-picker>\\r\\n            </div>\\r\\n\\r\\n        </div>\\r\\n    </div>\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-2\\\">\\r\\n        <button type=\\\"submit\\\" class=\\\"btn button-creer\\\" >Rechercher</button>\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-8\\\"></div>\\r\\n    <div class=\\\"col-lg-2\\\"></div>\\r\\n</div>-->\\r\\n            </form>\\r\\n\\r\\n            <br><br>\\r\\n\\r\\n            <div [hidden]=\\\"!aucunResultat\\\"><strong>Aucun résultat ne correspond à votre recherche</strong></div>\\r\\n            <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n                <thead>\\r\\n                    <tr>\\r\\n                        <th width=\\\"35%\\\" *ngIf=\\\"search.typeProductionCode=='MORCEAU'\\\" [class]=\\\"selectedClass('titreMorceau')\\\" (click)=\\\"changeSorting('titreMorceau')\\\">Titre morceau</th>\\r\\n                        <th width=\\\"35%\\\" *ngIf=\\\"search.typeProductionCode=='ALBUM'\\\" [class]=\\\"selectedClass('titreAlbum')\\\" (click)=\\\"changeSorting('titreAlbum')\\\">Titre production</th>\\r\\n                        <th width=\\\"35%\\\" *ngIf=\\\"search.typeProductionCode!='ALBUM' && search.typeProductionCode!='MORCEAU' \\\" [class]=\\\"selectedClass('titreAlbum')\\\"\\r\\n                            (click)=\\\"changeSorting('titreAlbum')\\\">Titre</th>\\r\\n                        <th width=\\\"20%\\\" [class]=\\\"selectedClass('datePublication')\\\" (click)=\\\"changeSorting('datePublication')\\\">Date de publication</th>\\r\\n                        <th width=\\\"10%\\\">Éditer</th>\\r\\n                        <th width=\\\"5%\\\" *ngIf=\\\"getSiAdministrateur()\\\">Supprimer</th>\\r\\n                    </tr>\\r\\n                </thead>\\r\\n                <tbody>\\r\\n                    <tr *ngFor=\\\"let prod of rows | orderBy : convertSorting()\\\">\\r\\n                        <td *ngIf=\\\"search.typeProductionCode=='MORCEAU'\\\">\\r\\n                            <h4>{{prod.titreMorceau}}</h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"search.typeProductionCode=='ALBUM'\\\">\\r\\n                            <h4>{{prod.titreAlbum}}</h4>\\r\\n                        </td>\\r\\n\\r\\n                        <td>\\r\\n                            <h4>{{prod.datePublication | date: 'yyyy' }}</h4>\\r\\n                        </td>\\r\\n\\r\\n                        <td *ngIf=\\\"prod.productionAlbumId!=null&&getModeRedirectionDetail(prod)=='MODIFICATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetailAlbum(prod,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\" title=\\\"Modifier\\\"></i> </a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"prod.productionAlbumId!=null&&getModeRedirectionDetail(prod)=='CONSULTATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetailAlbum(prod,'CONSULTATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-search-plus\\\" aria-hidden=\\\"true\\\" title=\\\"Consulter\\\"></i> </a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"getSiAdministrateur()&&prod.productionAlbumId!=null\\\">\\r\\n                            <h4><i (click)=\\\"toDeleteAlbum(prod);\\\" class=\\\"fa fa-times-circle\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"></i></h4>\\r\\n                        </td>\\r\\n\\r\\n                        <!--<td *ngIf=\\\"prod.productionMorceauId!=null\\\"><h4><a  (click)=\\\"goToDetailMorceau(prod.productionMorceauId)\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\"></i> </a></h4></td>-->\\r\\n                        <td *ngIf=\\\"prod.productionMorceauId!=null&&getModeRedirectionDetail(prod)=='MODIFICATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetailMorceau(prod,'MODIFICATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\" title=\\\"Modifier\\\"></i> </a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"prod.productionMorceauId!=null&&getModeRedirectionDetail(prod)=='CONSULTATION'\\\">\\r\\n                            <h4><a (click)=\\\"goToDetailMorceau(prod,'CONSULTATION')\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-search-plus\\\" aria-hidden=\\\"true\\\" title=\\\"Consulter\\\"></i> </a></h4>\\r\\n                        </td>\\r\\n                        <td *ngIf=\\\"getSiAdministrateur()&&prod.productionMorceauId!=null\\\">\\r\\n                            <h4>\\r\\n                                <i (click)=\\\"toDeleteMorceau(prod);\\\" class=\\\"fa fa-times-circle\\\" aria-hidden=\\\"true\\\" title=\\\"Supprimer\\\"></i>\\r\\n                            </h4>\\r\\n                        </td>\\r\\n                    </tr>\\r\\n                </tbody>\\r\\n            </table>\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n\\r\\n\\r\\n        </div>\\r\\n    </div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/productionList.component.html\n// module id = 1065\n// module chunks = 1","module.exports = \"\\r\\n<div >\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n<div class=\\\"col-lg-2\\\">\\r\\n\\r\\n</div>\\r\\n<div class=\\\"col-lg-8\\\">\\r\\n    <form name=\\\"newPersonForm\\\"  (ngSubmit)=\\\"onSubmit()\\\" #groupeForm=\\\"ngForm\\\">\\r\\n        <br><br><br><br><br>\\r\\n        ------------- test autocomplete : --------------------------\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\"col-lg-5\\\">\\r\\n            <p-auto-complete [value]=\\\"testRes.libelle\\\" (actionRetour)=\\\"testRes.id=$event.id;testRes.libelle=$event.libelle\\\"> </p-auto-complete>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-7\\\"></div>\\r\\n        </div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        _________resutlat : __a{{testRes.id}}a__b{{testRes.libelle}}b____\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        --------------------------------------------------\\r\\n\\r\\n\\r\\n\\r\\n        <!--\\r\\n        test input:<br>\\r\\n        <jinput [value]=\\\"test.toto\\\" [siInput]=\\\"true\\\" (actionRetour)=\\\"test.toto=$event\\\"></jinput>\\r\\n<br>    \\r\\n        test span:<br>\\r\\n        <jinput [value]=\\\"test.toto\\\" [siInput]=\\\"false\\\"></jinput>\\r\\n<br>\\r\\n\\r\\n        test : {{test.toto}}\\r\\n-->\\r\\n        \\r\\n\\r\\n\\r\\n       <!--\\r\\n       \\r\\n        test :\\r\\n        <input \\r\\n        id=\\\"totoId\\\"\\r\\n        ngui-auto-complete\\r\\n        blank-option-text=\\\"Select One\\\"\\r\\n        [(ngModel)]=\\\"resTestList\\\"\\r\\n        [ngModelOptions]=\\\"{standalone: true}\\\"\\r\\n        [source]=\\\"testList\\\" \\r\\n        placeholder=\\\"enter text\\\"\\r\\n        value-formatter=\\\"value\\\"\\r\\n        list-formatter=\\\"value\\\"\\r\\n        z-index=\\\"4\\\"/> \\r\\n\\r\\n        resultat : {{resTestList.id}}\\r\\n\\r\\n\\r\\n        -------------------------------------------------------------\\r\\n       \\r\\n       \\r\\n       \\r\\n        <input \\r\\n        id=\\\"totoId\\\"\\r\\n        name = \\\"totoName\\\"\\r\\n        ngui-auto-complete\\r\\n        blank-option-text=\\\"Select One\\\"\\r\\n        [(ngModel)]=\\\"resTestList\\\"\\r\\n        \\r\\n        [source]=\\\"testList\\\" \\r\\n        placeholder=\\\"enter text\\\"\\r\\n        value-formatter=\\\"value\\\"\\r\\n        list-formatter=\\\"value\\\"\\r\\n        (ngModelChange)=\\\"changeList($event)\\\"\\r\\n        (keydown)=\\\"changeList($event)\\\"\\r\\n        z-index=\\\"4\\\"/> \\r\\n\\r\\n        resultat : {{resTestList.id}}\\r\\n\\r\\n<!--\\r\\ntest model 5 :\\r\\n\\r\\n        <input ngui-auto-complete\\r\\n        id=\\\"model5\\\"\\r\\n        placeholder=\\\"Start typing a hero name (min. 2 chars) ... for example: Hulk\\\"     \\r\\n        [(ngModel)]=\\\"resTestList\\\" \\r\\n        [ngModelOptions]=\\\"{standalone: true}\\\"\\r\\n        [source]=\\\"generaleService.findHeroes\\\"\\r\\n        path-to-data=\\\"data.results\\\"\\r\\n        [list-formatter]=\\\"renderHero\\\"\\r\\n        min-chars=\\\"2\\\" \\r\\n      />\\r\\n\\r\\n\\r\\n\\r\\n<input [(ngModel)]=\\\"myModel\\\"\\r\\n          (focus)=\\\"showMe=true\\\"\\r\\n          (blur)=\\\"showMe=false\\\" />\\r\\n      <ngui-auto-complete \\r\\n         *ngIf=\\\"showMe\\\"\\r\\n         [show-dropdown-on-init]=\\\"true\\\"\\r\\n         (valueSelected)=\\\"myModel = $event\\\"\\r\\n         [show-input-tag]=\\\"false\\\"\\r\\n         [source]=\\\"[1,2,3,4,5]\\\">\\r\\n      </ngui-auto-complete>\\r\\n\\r\\n-->\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n        <!--\\r\\n        lieu api grouv\\r\\n        <div class=\\\"row\\\" *ngFor=\\\"let l of lieuList\\\">\\r\\n            <div class=\\\"row\\\">\\r\\n              nom:  {{l.nom}} // code:  {{l.code}} // codeDepartement : {{l.codeDepartement}} // codeRegion: {{l.codeRegion}} // _score {{l._score}}\\r\\n            </div>\\r\\n            codesPostaux :\\r\\n            <span *ngFor=\\\"let codePostaux of l.codesPostaux\\\">\\r\\n              {{codePostaux}} // \\r\\n            </span>\\r\\n\\r\\n            centre :\\r\\n            <div class=\\\"row\\\">\\r\\n              {{l.centre.type}} -- coordinates <span *ngFor=\\\"let c1 of l.centre.coordinates\\\"> {{c1}} // </span>\\r\\n            </div>\\r\\n            \\r\\n\\r\\n            <br><br><br>\\r\\n        </div>\\r\\n        -->\\r\\n\\r\\n        <!--\\r\\n        <div class=\\\"row\\\" *ngFor=\\\"let l of lieuList2\\\">\\r\\n            <div class=\\\"row\\\">\\r\\n            place_id:  {{l.place_id}} // licence:  {{l.licence}} // osm_type : {{l.osm_type}} // osm_id: {{l.osm_id}} // _score {{l._score}}\\r\\n            </div>\\r\\n            boundingbox :\\r\\n            <span *ngFor=\\\"let b of l.boundingbox\\\">\\r\\n              {{b}} // \\r\\n            </span>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n            lat:  {{l.lat}} // lon:  {{l.lon}} \\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n            display_name:  {{l.display_name}}\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n            class:  {{l.class}} // type:  {{l.type}} // importance : {{l.importance}} // icon: {{l.icon}} \\r\\n            </div>\\r\\n\\r\\n            \\r\\n            address : \\r\\n            <div class=\\\"row\\\">\\r\\n            city:  {{l.address.city}} // county:  {{l.address.county}} // state : {{l.address.state}} // country: {{l.address.country}}  // country_code: {{l.address.country_code}} \\r\\n            </div>\\r\\n            \\r\\n            postcode :\\r\\n            {{l.address.postcode}} // \\r\\n            \\r\\n            <br><br><br>\\r\\n        </div>\\r\\n        -->\\r\\n\\r\\n        <div class=\\\"row\\\">\\r\\n            <div class=\\\" col-lg-12\\\" >\\r\\n                <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" >Sauvegarder</button>\\r\\n            </div>\\r\\n        </div>\\r\\n    </form>\\r\\n    <br><br><br><br><br><br>\\r\\n</div>\\r\\n\\r\\n\\r\\n<div class=\\\"col-lg-2\\\">\\r\\n\\r\\n</div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/test-page.component.html\n// module id = 1066\n// module chunks = 1","module.exports = \"\\r\\n\\r\\n<header></header>\\r\\n<navbar [select]=\\\"'utilisateur'\\\"></navbar>\\r\\n<div *ngIf=\\\"mode=='MODIFICATION' || mode=='CREATION' || mode=='VALIDATION'\\\">\\r\\n     <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-4\\\">\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"!(mode=='CREATION' || utilisateurDetail==null || utilisateurDetail.utilisateurId==null)\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <h3><strong>Création d'un utilisateur</strong></h3>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\" [hidden]=\\\"!((mode=='MODIFICATION' || mode=='VALIDATION')&&utilisateurDetail!=null&&utilisateurDetail.utilisateurId!=null  )\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <h3><strong>Modification d'un utilisateur</strong></h3>\\r\\n                </div>\\r\\n            </div>\\r\\n            \\r\\n\\r\\n\\r\\n            <br><br>\\r\\n\\r\\n            <form name=\\\"newutilisateurForm\\\" (ngSubmit)=\\\"onSubmit()\\\" #utilisateurForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n                \\r\\n                <!--<detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\"  [siValidationMode2]=\\\"siValidationPageMode\\\"  \\r\\n                    [siAllValid]=\\\"siAllValid\\\"  [msgError]=\\\"msgError\\\"  [siSubmitEnCours]=\\\"siSubmitEnCours\\\" >\\r\\n                </detail-message>-->\\r\\n\\r\\n                <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\"  [siValidationMode2]=\\\"false\\\"     \\r\\n                 [siAllValid]=\\\"false\\\"  [msgError]=\\\"msgError\\\"  [siSubmitEnCours]=\\\"siSubmitEnCours\\\" ></detail-message>\\r\\n\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Nom</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nom\\\" required minlength=\\\"2\\\" [(ngModel)]=\\\"utilisateurDetail.nom\\\" name=\\\"nom\\\" #nom=\\\"ngModel\\\"\\r\\n                            maxlength=\\\"50\\\">\\r\\n                        <div [hidden]=\\\"nom.valid || nom.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Nom is obligatoire\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"siNomPrenomUnique\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le couple nom prénom est déjà utilisé\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n                \\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Prénom</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"prenom\\\" maxlength=\\\"50\\\" [(ngModel)]=\\\"utilisateurDetail.prenom\\\" name=\\\"prenom\\\"\\r\\n                            #prenom=\\\"ngModel\\\">\\r\\n                        \\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Profil</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                        \\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                            <select class=\\\"form-control\\\" id=\\\"profil\\\" required [(ngModel)]=\\\"utilisateurDetail.profil\\\" name=\\\"profil\\\" #profil=\\\"ngModel\\\">\\r\\n                            \\r\\n                                <option *ngFor=\\\"let profil of typeProfilList\\\" [value]=\\\"profil.code\\\">{{profil.libelle}}</option>\\r\\n                            </select>\\r\\n                            <div [hidden]=\\\"profil.valid || profil.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                                Le profil est obligatoire\\r\\n                            </div>\\r\\n                        </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Login</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"login\\\" required maxlength=\\\"50\\\" minlength=\\\"3\\\" [(ngModel)]=\\\"utilisateurDetail.login\\\"\\r\\n                            name=\\\"login\\\" #login=\\\"ngModel\\\" (keyup)=\\\"checkLoginUnique()\\\">\\r\\n                        <div [hidden]=\\\"login.valid || login.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le login est obligatoire\\r\\n                        </div>\\r\\n                        <div [hidden]=\\\"siLoginUnique\\\" class=\\\"alert alert-danger\\\">\\r\\n                            Le login est déjà utilisé\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Email</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        <input type=\\\"email\\\" class=\\\"form-control\\\" id=\\\"email\\\" required maxlength=\\\"50\\\" pattern=\\\"^\\\\w+([\\\\.-]?\\\\w+)*@\\\\w+([\\\\.-]?\\\\w+)*(\\\\.\\\\w{2,3})+$\\\"\\r\\n                            [(ngModel)]=\\\"utilisateurDetail.email\\\" name=\\\"email\\\" #email=\\\"ngModel\\\">\\r\\n                        <div [hidden]=\\\"email.valid || email.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                            L'email est obligatoire\\r\\n                        </div>\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <div class=\\\"row\\\" *ngIf=\\\"mode=='CREATION'\\\">\\r\\n                    <div class=\\\"col-lg-5\\\">\\r\\n                        <div class=\\\"row\\\">\\r\\n                            <div class=\\\"col-lg-12\\\">\\r\\n                                <label for=\\\"nom\\\" class=\\\"label1\\\">Mot de passe</label>\\r\\n                            </div>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-lg-7\\\">\\r\\n                        Le mot de passe est généré automatiquent\\r\\n                    </div>\\r\\n                </div>\\r\\n\\r\\n                <br>\\r\\n                <div class=\\\"row\\\">\\r\\n                    <div class=\\\"col-lg-12\\\">\\r\\n                        <button type=\\\"button\\\" *ngIf=\\\"mode=='MODIFICATION'\\\" class=\\\"btn\\\" (click)=\\\"nouveauMotDePasse()\\\" >Générer un nouveau mot de passe</button>\\r\\n                        <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!utilisateurForm.form.valid || !checkSiFormulaireValide()\\\">Sauvegarder</button>\\r\\n                    </div>\\r\\n\\r\\n                </div>\\r\\n\\r\\n            </form>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-6\\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n<!--\\r\\n                <div [hidden]=\\\"mode!='CONSULTATION'\\\">\\r\\n                    <h3>Fiche utilisateur</h3>\\r\\n                    <table width=\\\"80%\\\">\\r\\n                        <thead>\\r\\n                            <tr>\\r\\n                                <th width=\\\"20%\\\"></th>\\r\\n                                <th width=\\\"80%\\\"></th>\\r\\n                            </tr>\\r\\n                        </thead>\\r\\n                        <tbody>\\r\\n                            <tr [hidden]=\\\"!siMdpChangeOk\\\">\\r\\n                                <td colspan=\\\"2\\\"><strong>Le mot de passe à été changé</strong></td>\\r\\n                            </tr>\\r\\n                            <tr [hidden]=\\\"siMdpChangeOk== null || siMdpChangeOk\\\">\\r\\n                                <td colspan=\\\"2\\\"><strong>Erreur lors du changement du mot de passe</strong></td>\\r\\n                            </tr>\\r\\n                            <tr>\\r\\n                                <td><p>Nom</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.nom}}</strong></p></td>\\r\\n                            </tr>\\r\\n                            <tr>\\r\\n                                <td><p>Prénom</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.prenom}}</strong></p></td>\\r\\n                            </tr>\\r\\n                           \\r\\n                            <tr>\\r\\n                                <td><p>Profil</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.profilLibelle}}</strong></p></td>\\r\\n                            </tr>\\r\\n                            <tr [hidden]=\\\"utilisateurDetail.entrepriseInterneNom==null\\\">\\r\\n                                <td><p>Profil</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.entrepriseInterneNom}}</strong></p></td>\\r\\n                            </tr>\\r\\n                            <tr>\\r\\n                                <td><p>Login</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.login}}</strong></p></td>\\r\\n                            </tr>\\r\\n                            <tr>\\r\\n                                <td><p>Email</p></td>\\r\\n                                <td><p><strong>{{utilisateurDetail.email}}</strong></p></td>\\r\\n                            </tr>\\r\\n                        </tbody>\\r\\n                    </table>\\r\\n\\r\\n                    <button type=\\\"button\\\" class=\\\"btn btn-default\\\" (click)=\\\"mode='MODIFICATION'\\\">Modifier</button>\\r\\n                    <button type=\\\"button\\\" class=\\\"btn\\\" (click)=\\\"nouveauMotDePasse()\\\" >Générer un nouveau mot de passe</button>\\r\\n                </div>\\r\\n                \\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-lg-2\\\">\\r\\n                  \\r\\n        </div>\\r\\n    </div>\\r\\n\\r\\n</div>\\r\\n-->\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/utilisateur-detail.component.html\n// module id = 1067\n// module chunks = 1","module.exports = \"<br><br><br><br><br>\\r\\n<div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-3\\\">\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-6\\\">\\r\\n        <h3><strong>Inscription</strong></h3>\\r\\n        <div class=\\\"row\\\" *ngIf=\\\"siInscriptionOk&&siSubmit\\\">\\r\\n            <div class=\\\" col-lg-12\\\">\\r\\n                <div class=\\\" alert alert-info\\\">\\r\\n                    Vous êtes inscrit. Vous allez être redirigé vers la page de login dans 5 secondes.\\r\\n                </div>\\r\\n            </div>\\r\\n        </div>\\r\\n        <div class=\\\"row\\\" *ngIf=\\\"!siInscriptionOk&&siSubmit\\\">\\r\\n            <div class=\\\" col-lg-12\\\">\\r\\n                <div class=\\\" alert alert-danger\\\">\\r\\n                    Erreur lors de l'enregistrement.\\r\\n                </div>\\r\\n            </div>\\r\\n        </div>\\r\\n        <form name=\\\"inscriptionForm\\\" (ngSubmit)=\\\"onSubmit()\\\" #inscriptionForm=\\\"ngForm\\\">\\r\\n            <!--\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Civilité\\\" forLabel=\\\"civiliteId\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <p-select [list]=\\\"civiliteList\\\" [(value)]=\\\"detail.civiliteLibelle\\\" [(valueId)]=\\\"detail.civiliteId\\\" [siInput]=\\\"true\\\" id=\\\"civiliteId\\\">\\r\\n                    </p-select>\\r\\n                </div>\\r\\n            </div>\\r\\n            -->\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Nom\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <p-input type=\\\"text\\\" id=\\\"nom\\\" [(value)]=\\\"detail.nom\\\" siRequired=\\\"true\\\"></p-input>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Prénom\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <p-input type=\\\"text\\\" id=\\\"prenom\\\" [(value)]=\\\"detail.prenom\\\"></p-input>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Email\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <input type=\\\"email\\\" class=\\\"form-control\\\" id=\\\"email\\\" required maxlength=\\\"50\\\" pattern=\\\"^\\\\w+([\\\\.-]?\\\\w+)*@\\\\w+([\\\\.-]?\\\\w+)*(\\\\.\\\\w{2,3})+$\\\"\\r\\n                        [(ngModel)]=\\\"detail.email\\\" name=\\\"email\\\" #email=\\\"ngModel\\\">\\r\\n                    <div [hidden]=\\\"email.valid || email.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                        L'email est obligatoire.\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Login\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <p-input type=\\\"text\\\" id=\\\"login\\\" minlength=\\\"5\\\" [(value)]=\\\"detail.login\\\" siRequired=\\\"true\\\" (actionRetour)=\\\"checkLoginUnicite()\\\"></p-input>\\r\\n                    <div [hidden]=\\\"siLoginUnique\\\" class=\\\"alert alert-danger\\\">\\r\\n                        Le login est déjà utilisé.\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Mot de passe\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password\\\" required maxlength=\\\"20\\\" minlength=\\\"6\\\" [(ngModel)]=\\\"detail.password\\\"\\r\\n                        name=\\\"password\\\" #password=\\\"ngModel\\\" pattern=\\\"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\'])[A-Za-z\\\\d$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\']{6,}\\\">\\r\\n\\r\\n                    <div [hidden]=\\\"password.valid || password.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                        Le mot de passe est obligatoire (et doit contenir au minimun 6 caractères dont 1 minuscule, 1 majuscule, 1 chiffre, et un\\r\\n                        caractère spécial)\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-5\\\">\\r\\n                    <p-label valueLabel=\\\"Mot de passe confirmation\\\"></p-label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-7\\\">\\r\\n                    <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password2\\\" required maxlength=\\\"20\\\" minlength=\\\"6\\\" [(ngModel)]=\\\"detail.password2\\\"\\r\\n                        name=\\\"password2\\\" #password2=\\\"ngModel\\\">\\r\\n\\r\\n                    <div [hidden]=\\\"detail.password==null || detail.password2==null || detail.password==detail.password2\\\" class=\\\"alert alert-danger\\\">\\r\\n                        Le password et la confirmation ne sont pas identiques.\\r\\n                    </div>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <button id=\\\"savePerson\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!inscriptionForm.form.valid\\\">Sauvegarder</button>\\r\\n                </div>\\r\\n\\r\\n            </div>\\r\\n        </form>\\r\\n\\r\\n        \\r\\n    </div>\\r\\n    <div class=\\\"col-lg-3\\\">\\r\\n    </div>\\r\\n\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/utilisateur-inscription.component.html\n// module id = 1068\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'utilisateur'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n    <!--<div class=\\\"entete\\\">\\r\\n\\t\\r\\n\\t   <div style=\\\"text-align: center;z-index:2;\\\">\\r\\n        <br><br><br>\\r\\n        <b>UTILISATEURS</b>\\r\\n        \\r\\n    </div>-->\\r\\n\\r\\n\\r\\n</div>\\r\\n<div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-8\\\">\\r\\n        <!--<div class=\\\"row lien-menu\\\" > <a routerLink=\\\"/accueil\\\" routerLinkActive=\\\"active\\\">Accueil</a> > Utilisateurs </div>-->\\r\\n\\r\\n        <br><br>\\r\\n        \\r\\n        <a *ngIf=\\\"siDroitAccessCreate\\\" routerLink=\\\"/utilisateurDetaila/0/CREATION\\\" routerLinkActive=\\\"active\\\"><button type=\\\"button \\\" class=\\\"btn  pull-right button-creer\\\"  >Créer un nouvel utilisateur </button></a>\\r\\n        <br><br>\\r\\n        <h3><strong>Modifier un utilisateur déjà existant : </strong></h3>\\r\\n        <form (ngSubmit)=\\\"onSubmit()\\\" #propositionForm=\\\"ngForm\\\"  class=\\\"searchCritere\\\">\\r\\n            <br>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-12\\\">\\r\\n                    <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Chercher par:</label>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-1\\\">\\r\\n                    <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Nom</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nom\\\" [(ngModel)]=\\\"search.nom\\\" name=\\\"nom\\\" #nom=\\\"ngModel\\\">\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-1\\\">\\r\\n                    <label for=\\\"inputType\\\" class=\\\"control-label label1\\\">Profil</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-3\\\">\\r\\n                    <select class=\\\"form-control\\\" id=\\\"profil\\\" [(ngModel)]=\\\"search.profilCode\\\" name=\\\"profil\\\" #profil=\\\"ngModel\\\">\\r\\n                        <option></option>\\r\\n                        <option *ngFor=\\\"let profil of typeProfilList\\\" [value]=\\\"profil.code\\\">{{profil.libelle}}</option>\\r\\n                    </select>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-4\\\">\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-8\\\">\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                    <button type=\\\"button\\\" class=\\\"btn button-reset\\\" (click)=\\\"reset()\\\" >Reset</button>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                    <button type=\\\"submit\\\" class=\\\"btn button-search\\\" >Rechercher</button>\\r\\n                </div>\\r\\n            </div>\\r\\n\\r\\n            \\r\\n\\r\\n\\r\\n            <!--<div class=\\\"row\\\">\\r\\n    \\r\\n        <div class=\\\"col-lg-8\\\"></div>\\r\\n        <div class=\\\"col-lg-2\\\"><button type=\\\"submit\\\" class=\\\"btn button-search\\\" >Rechercher</button></div>\\r\\n    \\r\\n    \\r\\n    <!--<div class=\\\"col-lg-2\\\"><button type=\\\"button\\\" class=\\\"btn\\\" (click)=\\\"newUti();\\\">Nouvel utilisateur</button></div>\\r\\n</div>-->\\r\\n        </form>\\r\\n\\r\\n\\r\\n\\r\\n        <br><br>\\r\\n\\r\\n        <div [hidden]=\\\"!aucunResultat\\\"><strong>Aucun résultat ne correspond à votre recherche</strong></div>\\r\\n        <table class=\\\"table table-hover table-striped table-sortable\\\">\\r\\n            <thead>\\r\\n                <tr>\\r\\n                    <th width=\\\"20%\\\" [class]=\\\"selectedClass('nom')\\\" (click)=\\\"changeSorting('nom')\\\"><strong>Nom</strong></th>\\r\\n                    <th width=\\\"15%\\\" [class]=\\\"selectedClass('prenom')\\\" (click)=\\\"changeSorting('prenom')\\\"><strong>Prenom</strong></th>\\r\\n                    <th width=\\\"15%\\\" [class]=\\\"selectedClass('email')\\\" (click)=\\\"changeSorting('email')\\\"><strong>Mail</strong></th>\\r\\n                    <th width=\\\"15%\\\" [class]=\\\"selectedClass('login')\\\" (click)=\\\"changeSorting('login')\\\"><strong>Login</strong></th>\\r\\n                    <th width=\\\"15%\\\" [class]=\\\"selectedClass('profilLibelle')\\\" (click)=\\\"changeSorting('profilLibelle')\\\"><strong>Profil</strong></th>\\r\\n                    <th width=\\\"15%\\\" style=\\\"content: ''\\\"><strong>Éditer</strong></th>\\r\\n                    <th width=\\\"15%\\\" style=\\\"content: ''\\\"><strong>Supprimer</strong></th>\\r\\n                </tr>\\r\\n            </thead>\\r\\n            <tbody>\\r\\n                <tr *ngFor=\\\"let uti of rows| orderBy : convertSorting()\\\">\\r\\n                    <td>\\r\\n                        <h4>{{uti.nom | format : 'text'}}</h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4>{{uti.prenom}}</h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4>{{uti.email}}</h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4>{{uti.login}}</h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4>{{uti.profilLibelle}}</h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4><a routerLink=\\\"/utilisateurDetaila/{{uti.utilisateurId}}/MODIFICATION\\\" routerLinkActive=\\\"active\\\"> <i class=\\\"fa fa-pencil-square-o\\\" aria-hidden=\\\"true\\\"></i> </a></h4>\\r\\n                    </td>\\r\\n                    <td>\\r\\n                        <h4>\\r\\n                            <i *ngIf=\\\"uti.siCompteSupprimable\\\" (click)=\\\"toDelete(uti);\\\" class=\\\"fa fa-times-circle\\\" aria-hidden=\\\"true\\\"></i>\\r\\n                            <span *ngIf=\\\"!uti.siCompteSupprimable\\\">Non supprimable</span>\\r\\n                        </h4>\\r\\n                    </td>\\r\\n                </tr>\\r\\n            </tbody>\\r\\n        </table>\\r\\n\\r\\n\\r\\n\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-2\\\">\\r\\n\\r\\n\\r\\n\\r\\n    </div>\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/utilisateur-list.component.html\n// module id = 1069\n// module chunks = 1","module.exports = \"<header></header>\\r\\n<navbar [select]=\\\"'monCompte'\\\"></navbar>\\r\\n\\r\\n<div>\\r\\n  <div style=\\\"text-align: center;z-index:2;\\\">\\r\\n    <br><br><br>\\r\\n\\r\\n  </div>\\r\\n  <div class=\\\"row\\\">\\r\\n    <div class=\\\"col-lg-3\\\">\\r\\n\\r\\n    </div>\\r\\n    <div class=\\\"col-lg-6\\\">\\r\\n      <div>\\r\\n        <div class=\\\"container\\\">\\r\\n\\r\\n          <form (ngSubmit)=\\\"onSubmit()\\\" #utilisateurForm=\\\"ngForm\\\" (change)=\\\"siSubmit=false\\\">\\r\\n            <div style=\\\"width: 80%\\\">\\r\\n              <detail-message [siSubmitSuccess]=\\\"siSubmitSuccess\\\" [siSubmit]=\\\"siSubmit\\\" [siValidationMode2]=\\\"false\\\"\\r\\n                [siAllValid]=\\\"false\\\" [msgError]=\\\"msgError\\\" [siSubmitEnCours]=\\\"siSubmitEnCours\\\"\\r\\n                [siChargementDataEnCours]=\\\"siChargementDataEnCours\\\" [siPropositionCreateCompteUtilisateur]=\\\"false\\\">\\r\\n              </detail-message>\\r\\n            </div>\\r\\n            <div [hidden]=\\\"true\\\">\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"utilisateurId\\\" [(ngModel)]=\\\"utilisateurDetail.utilisateurId\\\"\\r\\n                name=\\\"utilisateurId\\\" #utilisateurId=\\\"ngModel\\\">\\r\\n            </div>\\r\\n            <div class=\\\"form-group\\\">\\r\\n\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"name\\\">Nom</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"nom\\\" required minlength=\\\"2\\\" [(ngModel)]=\\\"utilisateurDetail.nom\\\"\\r\\n                    name=\\\"nom\\\" #nom=\\\"ngModel\\\" maxlength=\\\"50\\\">\\r\\n                  <div [hidden]=\\\"nom.valid || nom.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Le nom est obligatoire.\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"prenom\\\">Prénom</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"prenom\\\" maxlength=\\\"50\\\" [(ngModel)]=\\\"utilisateurDetail.prenom\\\"\\r\\n                    name=\\\"prenom\\\" #prenom=\\\"ngModel\\\">\\r\\n                </div>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"login\\\">Login</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <p-input type=\\\"text\\\" id=\\\"login\\\" [(value)]=\\\"utilisateurDetail.login\\\" [siInput]=\\\"siCreationApresCompteTemporaire\\\"\\r\\n                    [siValidationAndNonValid]=\\\"false\\\" (actionRetour)=\\\"checkLoginUnique()\\\" siRequired=\\\"true\\\"></p-input>\\r\\n                  <div [hidden]=\\\"siLoginUnique\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Le login doit etre unique.\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"email\\\">Email</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <input type=\\\"email\\\" class=\\\"form-control\\\" id=\\\"email\\\" required maxlength=\\\"50\\\" pattern=\\\"^\\\\w+([\\\\.-]?\\\\w+)*@\\\\w+([\\\\.-]?\\\\w+)*(\\\\.\\\\w{2,3})+$\\\"\\r\\n                    [(ngModel)]=\\\"utilisateurDetail.email\\\" name=\\\"email\\\" #email=\\\"ngModel\\\">\\r\\n                  <div [hidden]=\\\"email.valid || email.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                    L'email est obligatoire.\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"password\\\">Mot de passe</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password\\\" required maxlength=\\\"20\\\" minlength=\\\"6\\\"\\r\\n                    [(ngModel)]=\\\"utilisateurDetail.password\\\" name=\\\"password\\\" #password=\\\"ngModel\\\" pattern=\\\"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\'])[A-Za-z\\\\d$@$!%*?&_\\\\-:;\\\\,§\\\\/\\\\.\\\\+=)(\\\\']{6,}\\\">\\r\\n\\r\\n                  <div [hidden]=\\\"password.valid || password.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                    Le mot de passe est obligatoire (et doit contenir au minimun 6 caractères dont\\r\\n                    1 minuscule, 1 majuscule, 1 chiffre, et un\\r\\n                    caractère spécial)\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"row\\\">\\r\\n                <div class=\\\"col-lg-2\\\">\\r\\n                  <label for=\\\"password\\\">Confirmation</label>\\r\\n                </div>\\r\\n                <div class=\\\"col-lg-6\\\">\\r\\n                  <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password2\\\" required maxlength=\\\"20\\\" [(ngModel)]=\\\"utilisateurDetail.password2\\\"\\r\\n                    name=\\\"password2\\\" #password2=\\\"ngModel\\\">\\r\\n                  <div [hidden]=\\\"password2.valid || password2.pristine\\\" class=\\\"alert alert-danger\\\">\\r\\n                    La confirmation est obligatoire.\\r\\n                  </div>\\r\\n                  <div [hidden]=\\\"utilisateurDetail.password==null || utilisateurDetail.password2==null || utilisateurDetail.password==utilisateurDetail.password2\\\"\\r\\n                    class=\\\"alert alert-danger\\\">\\r\\n                    Le password et la confirmation ne sont pas identiques.\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <button id=\\\"saveInfos\\\" class=\\\"btn\\\" type=\\\"submit\\\" [disabled]=\\\"!utilisateurForm.form.valid || utilisateurDetail.password!=utilisateurDetail.password2\\\">Enregistrer</button>\\r\\n            </div>\\r\\n          </form>\\r\\n\\r\\n        </div>\\r\\n      </div>\\r\\n      <div class=\\\"col-lg-3\\\">\\r\\n\\r\\n      </div>\\r\\n    </div>\\r\\n\\r\\n  </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/utilisateur-mon-compte.component.html\n// module id = 1070\n// module chunks = 1","module.exports = \".validationColor{\\r\\n  background-color: #f2dede;\\r\\n  border-radius: 4px;\\r\\n  \\r\\n}\\r\\n.ng-valid[required], .ng-valid.required  {\\r\\n  border-left: 5px solid #42A948; /* green */\\r\\n}\\r\\n.ng-invalid:not(form)  {\\r\\n  border-left: 5px solid #a94442; /* red */\\r\\n}\\r\\n\\r\\n/*\\r\\n.form-control-libelle{\\r\\nborder-style: none; \\r\\nbox-shadow: none;\\r\\n}*/\\r\\n/*\\r\\n.toto10{\\r\\nmargin-left: 0px;\\r\\n  margin-right: 0px;\\r\\n}*/\\r\\n\\r\\n.autoCompleteBlock{\\r\\n  border-radius: 4px;\\r\\n  background-color: #FFFFFF;\\r\\n  /*margin-left: 2px;\\r\\n  margin-right: 2px;*/\\r\\n  \\r\\n    position: absolute;\\r\\n    z-index: 10;\\r\\n    max-height: 170px;\\r\\n    overflow-y: scroll;\\r\\n    overflow-x: hidden;\\r\\n\\tborder: 1px solid #ebebeb;\\r\\n    padding-right: 10px;\\r\\n\\tright: 15px;\\r\\n}\\r\\n\\r\\n.autoCompleteBlock > div:hover {\\r\\n\\tbackground-color: black;\\r\\n    color: white;\\r\\n    cursor: pointer;\\r\\n}\\r\\n/*\\r\\n.autoCompleteBlock>*>span{\\r\\n  margin-left: 12px;\\r\\n  /*background-color: #FFFFFF;*/\\r\\n /* margin-bottom: 0px;\\r\\n  margin-left: 2px;\\r\\n  margin-right: 2px;*/\\r\\n  /*border-radius: 4px;*/\\r\\n/*}*/\\r\\n\\r\\n\\r\\n.autoCompleteLigne{\\r\\n  margin-left: 12px;\\r\\n}\\r\\n/*\\r\\n.inputConsultation {\\r\\n    font-weight: bold;\\r\\n    padding: 6px 12px;\\r\\n    padding-top: 8px;\\r\\n}\\r\\n*/\\r\\n.inputConsultation {\\r\\n    font-weight: bold;\\r\\n}\\r\\n\\r\\n.divConsultation{\\r\\n  /*padding-top:8px;*/\\r\\n  margin-left: 10px;\\r\\n}\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/tag/p-tag.component.css\n// module id = 117\n// module chunks = 1","\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Utils } from '../services/utils.service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nexport abstract class AbstractAllComponent {\r\n    user: UtilisateurDetail;\r\n    utilisateurProfil: UtilisateurProfilEnum;\r\n    timeOutUserSessionAll: number = 30 * 60 * 1000;\r\n    timeOutUserSessionDetail: number = 30 * 60 * 1000;\r\n    timeOutUserSessionSearch: number = 30 * 60 * 1000;\r\n    \r\n    constructor(\r\n        protected router: Router,\r\n        protected utilisateurService: UtilisateurService\r\n    ) { }\r\n\r\n    getUserInfo() {\r\n        this.getUserInfoSession();\r\n        if (!this.checkTimeOutAll()) {\r\n            return null;\r\n        }\r\n        if (this.user == null || this.user.utilisateurId == null || this.user.profil == null) {\r\n            this.redirectToNonDroitAcces();\r\n            return null;\r\n        }\r\n\r\n        this.changeTimeOfTimeOut();\r\n\r\n        if (this.user.profil == UtilisateurProfilEnum[UtilisateurProfilEnum.SUPER_ADMINISTRATEUR]) this.utilisateurProfil = UtilisateurProfilEnum.SUPER_ADMINISTRATEUR;\r\n        else if (this.user.profil == UtilisateurProfilEnum[UtilisateurProfilEnum.CHERCHEUR]) this.utilisateurProfil = UtilisateurProfilEnum.CHERCHEUR;\r\n        else if (this.user.profil == UtilisateurProfilEnum[UtilisateurProfilEnum.CONTRIBUTEUR]) this.utilisateurProfil = UtilisateurProfilEnum.CONTRIBUTEUR;\r\n        else if (this.user.profil == UtilisateurProfilEnum[UtilisateurProfilEnum.GRAND_PUBLIC]) this.utilisateurProfil = UtilisateurProfilEnum.GRAND_PUBLIC;\r\n        else if (this.user.profil == UtilisateurProfilEnum[UtilisateurProfilEnum.PUBLIC_NON_CONNECTE]) this.utilisateurProfil = UtilisateurProfilEnum.PUBLIC_NON_CONNECTE;\r\n        else {\r\n            this.redirectToNonDroitAcces();\r\n        }\r\n    }\r\n    getUserInfoSession() {\r\n        this.user = JSON.parse(localStorage.getItem(\"userSession\"));\r\n    }\r\n\r\n    checkTimeOutAll() {//vérifie le time out à l'initialisation d'une page (recherche, detail)\r\n        if (this.user == null || (this.user.timeOutDerniereMouvement < (new Date().getTime() - this.timeOutUserSessionAll))) {\r\n            localStorage.setItem(\"userSession\", null);\r\n            localStorage.setItem(\"tokenSession\", null);\r\n            this.redirectToPageTimeOutSession();\r\n            return false;\r\n        } else {\r\n            this.changeTimeOfTimeOut();\r\n        }\r\n        return true;\r\n    }\r\n    checkTimeOutDetail() {//vérifie le time out à l'enregistrement d'une page (créatio, modifcation)\r\n        if (this.user == null || (this.user.timeOutDerniereMouvement < (new Date().getTime() - this.timeOutUserSessionDetail))) {\r\n            localStorage.setItem(\"userSession\", null);\r\n            localStorage.setItem(\"tokenSession\", null);\r\n            this.redirectToPageTimeOutSession();\r\n            return false;\r\n        } else {\r\n            this.changeTimeOfTimeOut();\r\n            return true;\r\n        }\r\n    }\r\n    checkTimeOutRecherche() {//vérifie le time out à la recherche des résultats\r\n        if (this.user == null || (this.user.timeOutDerniereMouvement < (new Date().getTime() - this.timeOutUserSessionSearch))) {\r\n            localStorage.setItem(\"userSession\", null);\r\n            localStorage.setItem(\"tokenSession\", null);\r\n            this.redirectToPageTimeOutSession();\r\n            return false;\r\n        } else {\r\n            this.changeTimeOfTimeOut();\r\n            return true;\r\n        }\r\n    }\r\n\r\n    changeTimeOfTimeOut() {\r\n        //console.log(\"changeTimeOfTimeOut:\"+this.user==null);\r\n        this.user = JSON.parse(localStorage.getItem(\"userSession\"));\r\n        if (this.user != null) {\r\n            this.user.timeOutDerniereMouvement = new Date().getTime();\r\n            localStorage.setItem(\"userSession\", JSON.stringify(this.user));\r\n        } else {\r\n            this.redirectToErrorPage();\r\n            return null;\r\n        }\r\n    }\r\n\r\n\r\n    getUtilisateurId(): number {\r\n        if (this.user == null || this.user.utilisateurId == null) {\r\n            //this.getUserInfo();\r\n            this.getUserInfo();\r\n        }\r\n        return this.user.utilisateurId;\r\n    }\r\n    getSiAdministrateur(): boolean {\r\n        if (this.user == null || this.utilisateurProfil == null) return false;\r\n        return this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR\r\n    }\r\n    createUtilisateurCompteTemporaire() {\r\n        this.utilisateurService.createUtilisateurAutomatique().then(res => {\r\n            this.user.utilisateurId = res;\r\n            /*this.utilisateurService.getUtilisateur(res).then(uti =>{\r\n                this.user = uti;\r\n                localStorage.setItem(\"userSession\", JSON.stringify(uti));\r\n                this.createUtilisateurCompteTemporaireAfter();\r\n                console.log(\"creation auto id\"+this.user.utilisateurId);\r\n            })*/\r\n            localStorage.setItem(\"userSession\", JSON.stringify(this.user));\r\n            this.createUtilisateurCompteTemporaireAfter();\r\n\r\n\r\n        });\r\n    }\r\n    createUtilisateurCompteTemporaireAfter() { }\r\n\r\n\r\n    //page d erreur\r\n    redirectToErrorPage() {\r\n        this.router.navigate(['/erreurPage']);\r\n    }\r\n    redirectToNonDroitAcces() {\r\n        this.router.navigate(['/erreurDroitAcces']);\r\n    }\r\n    redirectToPageNotFound() {\r\n        this.router.navigate(['/erreurPageNotFound']);\r\n    }\r\n    redirectToPageTimeOutSession() {\r\n        this.router.navigate(['/erreurTimeOut']);\r\n        return null;\r\n    }\r\n    redirectToAccueilPage() {\r\n        this.router.navigate(['/accueil']);\r\n    }\r\n    redirectToLoginPage() {\r\n        this.router.navigate(['/login']);\r\n    }\r\n\r\n    checkAnneeDebutAvantFin2(deb: string, fin: string): boolean {\r\n        return Utils.checkAnneeDebutAvantFin(deb, fin);\r\n    }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/abstract-all.component.ts","import { FilePind } from '../objets/FilePind'\r\nimport { UtilisateurModification } from './UtilisateurModification';\r\n\r\nexport abstract class AbstractObjets{\r\n\r\n\r\n\r\n    //createurId:number;\r\n    //createurNom:string;\r\n    createur:UtilisateurModification;\r\n    //dateDerniereModification:Date;\r\n    //dernierModificateurNom:string;\r\n    //siModificateur:boolean=false;\r\n    modificateurList:UtilisateurModification[]=[];\r\n\r\n    fileList:FilePind[]=[];\r\n    siFilePresentAllValid:boolean=false;\r\n    siFileNonPresentAllValid:boolean=false;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/AbstractObjets.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\n//import { Groupes, Variante, Statuts, Lieux, PeriodeActivite } from '../objets/groupes';\r\n\r\n//import { Groupe, Variante, PeriodeActivite } from '../objets/groupes';\r\nimport { ObjRetour } from '../objets/objRetour';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Lieu } from '../objets/Lieu';\r\n//import { Groupe,AbstractGroupeInfo,AuteurGroupe,PeriodeActivite,Variante } from '../objets/Groupe';\r\nimport { FilePind } from '../objets/FilePind';\r\n\r\nimport { EvenementDetail, ArtisteEvenement, GroupeEvenement } from '../objets/evenement-detail';\r\nimport { EvenementList } from '../objets/evenement-search';\r\n\r\n@Injectable()\r\nexport class EvenementService{\r\n    \r\n    constructor(private http: Http) { }\r\n\r\n    getGroupeList():Promise<ObjSimple[]>{\r\n        return this.http.get(urlNodeJs+\"getGroupeList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    //TODO to delete\r\n    getPersonneList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getPersonneList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n\r\n    getTypeEvenementList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeEvenementList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n\r\n    getSubdivisionList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getSubdivisionList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getSubdivisionByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getSubdivisionByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createSubdivisionSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createSubdivisionSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    createOrUpdateEvenement(evenementId:number,  evenementDate:string, evenementNom:string, evenementLieuId:number, evenementLieuLibelle:string, evenementTypeId: number, evenementTypeLibelle:string, subdivisionId:number, adresse:string,  artisteListEvenement:ArtisteEvenement[], groupeListEvenement:GroupeEvenement[], evenementDesc:string, fileList:FilePind[],detail: EvenementDetail,modificateurId:number):Promise<number>{\r\n        return this.http.post(\"/api/createOrUpdateEvenement\",{evenementId, evenementDate, evenementNom, evenementLieuId, evenementLieuLibelle, evenementTypeId, evenementTypeLibelle, subdivisionId, adresse, artisteListEvenement, groupeListEvenement, evenementDesc, fileList,detail,modificateurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number);\r\n    }\r\n\r\n    getEvenementById(evenementId:number):Promise<EvenementDetail>{\r\n        return this.http.get(\"/api/getEvenementById/\"+ evenementId, { headers: getHeader() }).toPromise().then(res => res.json().data).catch(this.handleError);\r\n    }\r\n\r\n    getLieuList():Promise<Lieu[]>{\r\n        return this.http.get(\"/api/getLieuList\", { headers: getHeader() }).toPromise().then(response => response.json().data as Lieu[]).catch(this.handleError);\r\n    }\r\n    /*\r\n    test(){\r\n    console.log(\"totoooooooooooooooooo\");\r\n}*/\r\n    getEvenementListSimple():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getEvenementListSimple\", { headers: getHeader() }).toPromise().then(res=>res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getEvenementSimpleByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getEvenementSimpleByNom\", {nom}, { headers: getHeader() }).toPromise().then(res=>res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    checkUniciteNomEvenement(evenementNom:string,idCourant:number):Promise<boolean>{\r\n        return this.http.post(\"/api/checkUniciteNomEvenement\",{evenementNom,idCourant}, { headers: getHeader() }).toPromise().then(response => response.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n\r\n    evenementSearch(evenementNom:string, evenementLieuLibelle:string, evenementType:string, groupeId:number, personneId:number, dateEvenementIn:string, dateEvenementOut:string):Promise<EvenementList[]>{\r\n        return this.http.post(\"/api/evenementSearch\",{evenementNom, evenementLieuLibelle, evenementType, groupeId, personneId, dateEvenementIn, dateEvenementOut}, { headers: getHeader() }).toPromise().then(response => response.json().data as EvenementList[]).catch(this.handleError);\r\n    }\r\n/*\r\n    checkSiCreateurPageEvenement(evenementId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiCreateurPageEvenement/\"+evenementId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }*/\r\n    deleteEvenement(evenementId:number):Promise<boolean>{\r\n        return this.http.get(\"/api/deleteEvenement/\"+evenementId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n    }\r\n\r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/evenement-service.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport 'rxjs/add/operator/map';\r\nimport {Observable} from 'rxjs/Observable';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\n//import { Groupes, Variante, Statuts, Lieux, PeriodeActivite } from '../objets/groupes';\r\n\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Groupe,AuteurGroupe,PeriodeActivite,Variante } from '../objets/Groupe';\r\nimport { FilePind } from '../objets/FilePind';\r\nimport { LieuOSM } from '../objets/LieuOSM';\r\nimport { GroupeList } from '../objets/Groupe-search';\r\n\r\n@Injectable()\r\nexport class GroupeService{\r\n    \r\n    constructor(private http: Http) { }\r\n    \r\n    createOrUpdateGroupe(groupeId:number,nom:string,/*genreId:number,*/variantes:Variante[],anneeCreation:number,anneeFin:number,lieuOriginId:number,lieuOriginLibelle:string,periodeActiviteList:PeriodeActivite[],auteurList:AuteurGroupe[],description:String,fileList:FilePind[],/*genreLibelle:string,*//*lieuOriginOSM:LieuOSM,*/detail:Groupe,modificateurId:number):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createOrUpdateGroupe\",{groupeId,nom,/*genreId,*/variantes,anneeCreation,anneeFin,lieuOriginId,lieuOriginLibelle,periodeActiviteList,auteurList,description,fileList,/*genreLibelle,*//*lieuOriginOSM,*/detail,modificateurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n    createGroupeSimple(nom:string,createurId:number):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createGroupeSimple\",{nom,createurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n    /*\r\n    checkSiModificateurPageGroupe(groupeId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiModificateurPageGroupe/\"+groupeId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }\r\n    checkSiCreateurPageGroupe(groupeId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiCreateurPageGroupe/\"+groupeId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }*/\r\n\r\n\r\n    \r\n    getGroupeById(groupeId:number,utilisateurId:number):Promise<Groupe>{\r\n        return this.http.get(\"/api/getGroupeById/\"+groupeId+\"/\"+utilisateurId, { headers: getHeader() }).toPromise().then(res => res.json().data).catch(this.handleError);\r\n    }\r\n    /* exemple avec observable\r\n    dans le component : this.groupeService.getGroupeById(this.detail.groupeId).subscribe(res =>{\r\n          if(res==null){\r\n    getGroupeById(groupeId:number):Observable<Groupe>{\r\n        return this.http.get(urlNodeJs+\"getGroupeById/\"+groupeId).map(res => res.json().data).catch(this.handleError);\r\n    }*/\r\n\r\n    /*\r\n    createGroupe(groupName:string, groupGenre: string, variantes: Variante[], groupStatusId: number, groupDateCreation: string, groupDateEnd: string, groupOriginId: number, groupDesc: string, groupActivityPeriod: PeriodeActivite[]):Promise<ObjRetour>{\r\n        return this.http.post(\"createGroupe\",{groupName, groupGenre, variantes, groupStatusId, groupDateCreation, groupDateEnd, groupOriginId, groupDesc, groupActivityPeriod}).toPromise().then(response => response.json() as ObjRetour).catch(this.handleError);\r\n    }\r\n*/\r\n/*\r\n    getStatusGroupList():Promise<ObjSimple[]>{\r\n        return this.http.get(urlNodeJs+\"getStatusGroupList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getStatusGroupListByLibelle(libelle:string):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"getStatusGroupListByLibelle/\"+libelle, { headers: getHeader() }).toPromise().then(response => response.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n    createStatutGroupeSimple(nom:string):Promise<number>{\r\n        return this.http.get(urlNodeJs+\"createStatutGroupeSimple/\"+nom, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }*/\r\n/*\r\n     getLieuList():Promise<Lieux[]>{\r\n        return this.http.get(\"getLieuList\").toPromise().then(response => response.json().data as Lieux[]).catch(this.handleError);\r\n    }*/\r\n    /*\r\n    test(){\r\n    console.log(\"totoooooooooooooooooo\");\r\n}*/\r\n    getGroupeListSimple():Promise<GroupeList[]>{\r\n        return this.http.get(\"/api/getGroupeListSimple\", { headers: getHeader() }).toPromise().then(res=>res.json().data as GroupeList[]).catch(this.handleError);\r\n    }\r\n    getGroupeSimpleByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getGroupeSimpleByNom\",{nom}, { headers: getHeader() }).toPromise().then(res=>res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    checkUniciteNomGroupe(nom:string,idCourant:number):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/checkUniciteNomGroupe\",{nom,idCourant}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    deleteGroupe(groupeId:number):Promise<boolean>{\r\n        return this.http.get(\"/api/deleteGroupe/\"+groupeId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n    }\r\n\r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/groupe-service.ts","export abstract class AbstractErrorPage{\r\n\r\n    allMessage:boolean=true;\r\n    siRedirectLogin:boolean=false;\r\n    \r\n    goBack() {\r\n        window.history.go(this.numberGoBack());\r\n    }\r\n    abstract getTypePageTexte():string;\r\n    \r\n    numberGoBack():number{\r\n        return -1;\r\n    }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/abstract-error-page.component.ts","export class ObjSimple{\r\n    id:number;\r\n    code:string;\r\n    libelle:string;\r\n\r\n    value:string;\r\n    \r\n    \r\n}\r\n\r\nexport class ObjSimpleTest{\r\ntoto:Object;\r\n}\r\n\r\nexport function sortObjSimpleByLibelle(tab:ObjSimple[]){\r\n    tab.sort((a, b) => {\r\n        if(a.libelle==null && b.libelle==null) return 0;\r\n        if(a.libelle==null) return -1;\r\n        if(b.libelle==null) return 1;\r\n        if (a.libelle.toLocaleUpperCase() < b.libelle.toLocaleUpperCase()) return -1;\r\n        else if (a.libelle.toLocaleUpperCase() > b.libelle.toLocaleUpperCase()) return 1;\r\n        else return 0;\r\n    });\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/ObjSimple.ts","module.exports = \".pCreateBlock{\\r\\n\\tbackground-color: #b0d1ce;\\r\\n    padding:8px;\\r\\n    margin-top: 8px;\\r\\n    margin-bottom: 8px;\\r\\n    border-radius: 4px;\\r\\n}\\r\\n\\r\\n.fa-plus{\\r\\n  float: right;\\r\\n  margin-right: 20px;\\r\\n  padding-top: 12px;\\r\\n  \\r\\n}\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/tag/p-create-simple.component.css\n// module id = 20\n// module chunks = 1","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\n//import {urlNodeJs} from './services.config'\r\n\r\n/*\r\nimport { UtilisateurList } from '../objets/utilisateurList';\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { ObjRetour } from '../objets/ObjRetour';\r\n*/\r\nimport { LieuApi } from '../objets/LieuGeoApi';\r\nimport { LieuOSM } from '../objets/LieuOSM';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { ObjRetour } from '../objets/objRetour';\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\n@Injectable()\r\nexport class LieuService{\r\n    private headers = new Headers({'Content-Type': 'application/json'});\r\n\r\n    constructor(private http: Http) { }\r\n\r\n    getLieuApiSimples(nom:string):Promise<LieuApi[]>{\r\n        return this.http.get(\"https://geo.api.gouv.fr/communes?nom=\"+nom+\"&fields=nom,code&codeformat=json\").toPromise().then(res => res.json() as LieuApi[]).catch(this.handleError);\r\n    }\r\n    \r\n    getLieuApi(nom:string):Promise<LieuApi[]>{\r\n        return this.http.get(\"https://geo.api.gouv.fr/communes?nom=\"+nom+\"&fields=nom,code,codesPostaux,codeDepartement,codeRegion,centre&format=json&geometry=centre\").toPromise().then(res => res.json() as LieuApi[]).catch(this.handleError);\r\n    }// choix possible : nom,code,codesPostaux,codeDepartement,codeRegion,population\r\n    getLieuApiByCodeDepartement(codeDepartement:number):Promise<LieuApi[]>{\r\n        return this.http.get(\"https://geo.api.gouv.fr/communes?codeDepartement=\"+codeDepartement+\"&fields=nom,code,codesPostaux,codeDepartement,codeRegion,centre&format=json&geometry=centre\").toPromise().then(res => res.json() as LieuApi[]).catch(this.handleError);\r\n    }// choix possible : nom,code,codesPostaux,codeDepartement,codeRegion,population\r\n    \r\n    \r\n    getLieuOSM(nom:string):Promise<LieuOSM[]>{\r\n        return this.http.get(\"http://nominatim.openstreetmap.org/search?city=\"+nom+\"&format=json\").toPromise().then(res => res.json() as LieuOSM[]).catch(this.handleError);\r\n    }\r\n    getLieuByCity(nom:string):Promise<LieuOSM[]>{\r\n        console.log(\"getLieuOSM2:\"+nom)\r\n        return this.http.get(\"http://nominatim.openstreetmap.org/search?city=\"+nom+\"&format=json&addressdetails=1\").toPromise().then(res => res.json() as LieuOSM[]).catch(this.handleError);\r\n    }\r\n    /*\r\n    getLieuByState(nom:string):Promise<LieuOSM[]>{\r\n        console.log(\"getLieuOSM2:\"+nom)\r\n        return this.http.get(\"http://nominatim.openstreetmap.org/search?state=\"+nom+\"&format=json&addressdetails=1\").toPromise().then(res => res.json() as LieuOSM[]).catch(this.handleError);\r\n    }*/\r\n    \r\n    getLieuByState(nom:string):Promise<LieuOSM[]>{\r\n        console.log(\"getLieuOSM2:\"+nom)\r\n        return this.http.get(\"http://nominatim.openstreetmap.org/search?q=\"+nom+\"&format=json&addressdetails=1\").toPromise().then(res => res.json() as LieuOSM[]).catch(this.handleError);\r\n    }\r\n    getOrCreateLieuApi(nom:string,codeInsee:number,siGeoApi:boolean):Promise<ObjRetour>{\r\n        return this.http.post(urlNodeJs+\"getOrCreateLieuApi\",{nom,codeInsee,siGeoApi}, { headers: getHeader() }).toPromise().then(response => response.json() as ObjRetour).catch(this.handleError);\r\n    }\r\n    \r\n\r\n\r\n    /*\r\n    checkLoginPassword(login:string,password:string):Promise<UtilisateurDetail>{\r\n        return this.http.post(\"checkConnexion\",{login,password}).toPromise().then(res => res.json().data as UtilisateurDetail).catch(this.handleError);\r\n    }\r\n\r\n    getUtilisateurSearch(nom:string,profil:string): Promise<UtilisateurList[]> {\r\n        return this.http.post(\"utilisateurSearch\",{nom,profil}).toPromise().then(response => response.json().data as UtilisateurList[]).catch(this.handleError);\r\n    }\r\n    getUtilisateurByMail(mail:string):Promise<UtilisateurDetail> {\r\n        return this.http.post(\"getUtilisateurByMail\",{mail}).toPromise().then(response => response.json().data as UtilisateurDetail).catch(this.handleError);\r\n    }\r\n\r\n    getUtilisateur(id:number): Promise<UtilisateurDetail>{\r\n        return this.http.get(\"utilisateurDetail/\"+id).toPromise().then(response => response.json().data as UtilisateurDetail).catch(this.handleError);\r\n    }\r\n\r\n    createUtilisateur(nom:string,prenom:string,email:string,password:string, login:string,siSupprimable:boolean,siCompteTemporaire:boolean,profil:string):Promise<number>{\r\n        let options = new RequestOptions({ headers: this.headers });\r\n        return this.http.post(\"createUtilisateur\",{nom,prenom,email,password,login,siSupprimable,siCompteTemporaire,profil},options).toPromise().then(response => response.json().data as number).catch(this.handleError);\r\n    }\r\n\r\n    updateUtilisateur(id:number,nom:string,prenom:string,email:string,password:string, login:string,siSupprimable:boolean,siCompteTemporaire:boolean,profil:string){\r\n        let options = new RequestOptions({ headers: this.headers });\r\n        return this.http.post(\"updateUtilisateur\",{id,nom,prenom,email,password,login,siSupprimable,siCompteTemporaire,profil},options).toPromise().then(response => response.json().data as number).catch(this.handleError);\r\n    }\r\n    \r\n    sendMailNewPassword(mailDestinataire:string,newPwd:string,login:string):Promise<boolean>{\r\n        let sujet = \"Nouveau mot de passe\";\r\n        let content = \"Bonjour,\\nVotre login est : \"+login+\"\\nVoici votre nouveau mot de passe temporaire : \"+newPwd +'\\n\\nCordialement';\r\n        \r\n        return this.sendMail(mailDestinataire,sujet,content).then(ret => ret);\r\n        \r\n    }\r\n    private sendMail(mailDestinataire:string,sujet:string,content:string):Promise<boolean>{\r\n        //console.log(\"mail:\"+mailDestinataire+\"___\"+sujet+\"____\"+content);\r\n        return this.http.post(\"sendMail\",{mailDestinataire,sujet,content}).toPromise().then(response => response.json().success as boolean).catch(this.handleError);\r\n    }\r\n    getTypeProfilList(){\r\n        return this.http.get(\"typeProfilList\").toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    updateUtilisateurPassword(utilisateurId:number, pwd:string,siPwdTmp:boolean ){\r\n        return this.http.post(\"updateUtilisateurPwd\",{utilisateurId,pwd,siPwdTmp }).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n    }\r\n    checkNomPrenomUnique(utilisateurId:number,nom:string,prenom:string):Promise<boolean>{\r\n        return this.http.post(\"checkNomPrenomUnique\",{utilisateurId,nom,prenom}).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n    }\r\n    checkTrigrammeUnique(utilisateurId:number,trigramme:string):Promise<boolean>{\r\n        return this.http.post(\"checkTrigrammeUnique\",{utilisateurId,trigramme}).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n    }\r\n    checkLoginUnique(utilisateurId:number,login:string):Promise<boolean>{\r\n        return this.http.post(\"checkLoginUnique\",{utilisateurId,login}).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n    }\r\n    getPasswordUtilisateur(login:string):Promise<string>{\r\n        return this.http.post(\"getPassword\",{login}).toPromise().then(res => res.json().data.password as string).catch(this.handleError);\r\n    }\r\n\r\n    generatePassword():string{\r\n        \r\n        var charA = this.generatePwdCorrespondanceLettre(Math.floor((Math.random()*(25+1))));\r\n        var charB = this.generatePwdCorrespondanceLettre(Math.floor((Math.random()*(25+1))));\r\n        var charC = this.generatePwdCorrespondanceLettre(Math.floor((Math.random()*(25+1)))).toLowerCase();\r\n        var charD = this.generatePwdCorrespondanceLettre(Math.floor((Math.random()*(25+1)))).toLowerCase();\r\n        var charE = Math.floor((Math.random()*(9+1)));\r\n        var charF = this.generatePwdCorrespondanceCaracterreSpeciaux(Math.floor((Math.random()*(20+1))));\r\n\r\n        var pwd = charA+charB+charC+charD+charE+charF;\r\n        //console.log(pwd);\r\n        return pwd;\r\n    }\r\n    generatePwdCorrespondanceCaracterreSpeciaux(num:number):string{\r\n        if(num==0) return '$';\r\n        if(num==1) return '@';\r\n        if(num==2) return '!';\r\n        if(num==3) return '%';\r\n        if(num==4) return '*';\r\n        if(num==5) return '?';\r\n        if(num==6) return '&';\r\n        if(num==7) return '?';\r\n        if(num==8) return '_';\r\n        if(num==9) return '-';\r\n        if(num==10) return ':';\r\n        if(num==11) return ';';\r\n        if(num==12) return ',';\r\n        if(num==13) return '§';\r\n        if(num==14) return '/';\r\n        if(num==15) return '.';\r\n        if(num==16) return '+';\r\n        if(num==17) return '=';\r\n        if(num==18) return ')';\r\n        if(num==19) return ')';\r\n        if(num==20) return '\\'';\r\n\r\n        return \"\";\r\n    }\r\n\r\n    \r\n    generatePwdCorrespondanceLettre(num:number):string{\r\n        if(num==0) return 'A';\r\n        if(num==1) return 'B';\r\n        if(num==2) return 'C';\r\n        if(num==3) return 'D';\r\n        if(num==4) return 'E';\r\n        if(num==5) return 'F';\r\n        if(num==6) return 'G';\r\n        if(num==7) return 'H';\r\n        if(num==8) return 'I';\r\n        if(num==9) return 'J';\r\n        if(num==10) return 'K';\r\n        if(num==11) return 'L';\r\n        if(num==12) return 'M';\r\n        if(num==13) return 'N';\r\n        if(num==14) return 'O';\r\n        if(num==15) return 'P';\r\n        if(num==16) return 'Q';\r\n        if(num==17) return 'R';\r\n        if(num==18) return 'S';\r\n        if(num==19) return 'T';\r\n        if(num==20) return 'U';\r\n        if(num==21) return 'V';\r\n        if(num==22) return 'W';\r\n        if(num==23) return 'X';\r\n        if(num==24) return 'Y';\r\n        if(num==25) return 'Z';\r\n\r\n\r\n        return \"\";\r\n    }\r\n*/\r\n\r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/lieu-service.ts","module.exports = \"<header></header><navbar ></navbar>\\r\\n\\r\\n<div >\\r\\n\\r\\n\\r\\n<div class=\\\"row\\\">\\r\\n\\r\\n<div class=\\\"col-lg-3\\\">\\r\\n</div>\\r\\n\\r\\n\\r\\n<div class=\\\"col-lg-6\\\">\\r\\n    <br><br><br><br><br><br><br><br>\\r\\n    <div *ngIf=\\\"allMessage\\\">  \\r\\n    {{getTypePageTexte()}} Vous pouvez retourner à la page de <a routerLink=\\\"/login\\\" routerLinkActive=\\\"active\\\">login</a>, <a routerLink=\\\"/accueil\\\" routerLinkActive=\\\"active\\\">accueil</a> ou <a (click)=\\\"goBack()\\\">à la page précédente</a>.\\r\\n    </div>\\r\\n    <div *ngIf=\\\"siRedirectLogin\\\">  \\r\\n    {{getTypePageTexte()}} Merci de vous reconnecter en allant sur la page de <a routerLink=\\\"/login\\\" routerLinkActive=\\\"active\\\">login</a>.\\r\\n    </div>\\r\\n</div>\\r\\n\\r\\n<div class=\\\"col-lg-3\\\">\\r\\n</div>\\r\\n</div>\\r\\n\\r\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/vue/abstract-error-page.component.html\n// module id = 214\n// module chunks = 1","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport { Auteur,ProductionAlbum,TableMatiere,DateReedition,Support} from '../objets/ProductionAlbum';\r\nimport { ProductionList } from '../objets/ProductionSearch';\r\nimport { ProductionMorceau,AuteurMorceau } from '../objets/ProductionMorceau';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { FilePind } from '../objets/FilePind';\r\nimport { Album } from '../objets/ProductionAlbum';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\n@Injectable()\r\nexport class ProductionService{\r\n    constructor(private http: Http) { }\r\n\r\n    getTypeProductionList():ObjSimple[]{\r\n        let a = new ObjSimple();\r\n        a.code='MORCEAU';\r\n        a.libelle='Morceau';\r\n        let b = new ObjSimple();\r\n        b.code='ALBUM';\r\n        b.libelle='Album';\r\n        let t:ObjSimple[]=[a,b];\r\n        return t;\r\n    }\r\n\r\n    \r\n    getSupportList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getSupportList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getRoleList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getRoleList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getStudioList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getStudioList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getLabelList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getLabelList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getGenreList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getGenreList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getPersonneList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getPersonneList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getAlbumTypeList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getAlbumTypeList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    addSupport(value:string):Promise<boolean>{\r\n        return this.http.post(\"/api/addSupport\",{value}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    supportRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/supportRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    roleRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/roleRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    labelRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/labelRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    genreRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/genreRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    personneRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/personneRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    albumTypeRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/albumTypeRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    studioRegroupeList(idSrc:number,idList:number[]):Promise<boolean>{\r\n        return this.http.post(\"/api/studioRegroupeList\",{idSrc, idList}, { headers: getHeader() }).toPromise().then(res => res.json().succes as boolean).catch(this.handleError);\r\n    }\r\n    getCategorieList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getCategorieList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getCategorieAlbumByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getCategorieAlbumByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createCategorieAlbumSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createCategorieAlbumSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    /*\r\n    getTypeMixageList(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeMixageList/\"+libelle).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }*/\r\n    getTypeMixageList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeMixageList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getTypeMixageByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeMixageByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createTypeMixageSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createTypeMixageSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    getTypeMasteringByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeMasteringByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createTypeMasteringSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createTypeMasteringSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    getTypeStudioByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeStudioByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createStudioSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createStudioSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    /*\r\n    getTypeMasteringList(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeMasteringList/\"+libelle).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }*/\r\n    getTypeMasteringList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeMasteringList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    /*\r\n    getStudioList(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getStudioList/\"+libelle).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }*/\r\n    getTypeAlbumList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeAlbumList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getTypeAlbumByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeAlbumByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createTypeAlbum(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createTypeAlbum\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    /*\r\n    getPersonneListByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getPersonneListByNom/\"+nom).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }*/\r\n    getMorceauListByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getMorceauListByNom\",{nom}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getAlbumListByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getAlbumListByNom\",{nom}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getTypeAlbumListByType(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeAlbumListByType\",{nom}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n\r\n    updateProductionAlbum(albumId:number,typeAlbumId:number,typeAlbumLibelle:string,titre:string,auteurs:Auteur[],distributeurId:number,distributeurNom:string,\r\n            producteurId:number,producteurNom:string,datePublication:string,format:number,formatStr:string,nbrPiste:number,dedicace:string,\r\n            support:Support[],datePremiereEdition:string,dateReedition:DateReedition[],mixageId:number,mixageLibelle:string,\r\n            masteringId:number,masteringLibelle:string,/*studioId:number,studioLibelle:string,*/ /*conceptionVisuelleId:number,conceptionVisuelleNom:string,*/\r\n            tableMatiere:TableMatiere[],categorieId:number,motClef:string,couvertureTemporelle:string,genreId:number/*,collaborateur:ObjSimple[]*/,fileList:FilePind[],modificateurId:number,detail: ProductionAlbum):Promise<number>{\r\n        return this.http.post(\"/api/updateProductionAlbum\",{albumId,typeAlbumId,typeAlbumLibelle,titre,auteurs,distributeurId,distributeurNom,\r\n            producteurId,producteurNom,datePublication,format,formatStr,nbrPiste,dedicace,\r\n            support,datePremiereEdition,dateReedition,mixageId,mixageLibelle,\r\n            masteringId,masteringLibelle,/*studioId,studioLibelle,*/ /*conceptionVisuelleId,conceptionVisuelleNom,*/\r\n            tableMatiere,categorieId,motClef,couvertureTemporelle,genreId,/*collaborateur,*/fileList,modificateurId,detail}\r\n            , { headers: getHeader() }\r\n            ).toPromise().then(ret => ret.json().id as number).catch(this.handleError);\r\n    }\r\n    createAlbumSimple(nom:string,createurId:number):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createAlbumSimple\",{nom,createurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    getProductionAlbumById(albumId:number):Promise<ProductionAlbum>{\r\n        return this.http.get(\"/api/getProductionAlbumById/\"+albumId, { headers: getHeader() }).toPromise().then(res => res.json().data as ProductionAlbum).catch(this.handleError);\r\n    }\r\n\r\n    searchProduction(typeProductionCode:string,titreMorceau:string,titreAlbum:string,datePublicationIn:string,datePublicationOut:string,albumId:number):Promise<ProductionList[]>{\r\n        return this.http.post(\"/api/searchProduction\",{typeProductionCode,titreMorceau,titreAlbum,datePublicationIn,datePublicationOut,albumId}, { headers: getHeader() }).toPromise().then(res => res.json().data as ProductionList[]).catch(this.handleError);\r\n    }\r\n\r\n    getTypeTonaliteList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeTonaliteList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getTypeTonaliteByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeTonaliteByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createTonaliteSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createTonaliteSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    getTypeOrganologieList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getTypeOrganologieList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getTypeOrganologieByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeOrganologieByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createOrganologieSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createOrganologieSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    getTypeSupportByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTypeSupportByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createSupportSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createSupportSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    getMorceauById(id:number):Promise<ProductionMorceau>{\r\n        return this.http.get(\"/api/getMorceauById/\"+id, { headers: getHeader() }).toPromise().then(res=>res.json().data as ProductionMorceau).catch(this.handleError);\r\n    }\r\n\r\n    createOrUpdateProductionMorceau(morceauId:number,titre:string,albums:Album[],dateComposition:string,datePremierEnregistrement:string,datePremierePublication:string,format:number,description:string,typeTonaliteId:number,bpm:number,structureMorceau:string,/*organologie:string,*/typeOrganologieId, auteurs:AuteurMorceau[],langueId:number,parole:string,bibliographie:File,notice:File[],typeTonnaliteLibelle:string,langueLibelle:string,fileList:FilePind[],modificateurId:number,detail: ProductionMorceau):Promise<number>{\r\n        return this.http.post(\"/api/createOrUpdateProductionMorceau\",{morceauId,titre,albums,dateComposition,datePremierEnregistrement,datePremierePublication,format,description,typeTonaliteId,bpm,structureMorceau,typeOrganologieId,auteurs,langueId,parole,bibliographie,notice,typeTonnaliteLibelle,langueLibelle,fileList,modificateurId,detail}, { headers: getHeader() }).toPromise().then(ret => ret.json().id as number).catch(this.handleError);\r\n    }\r\n    createMorceauSimple(nom:string,createurId:number):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createMorceauSimple\",{nom,createurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    getMorceauNumPisteByAlbum(albumId:number,morceauIdCourant:number):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getMorceauNumPisteByAlbum/\"+albumId+\"/\"+morceauIdCourant, { headers: getHeader() }).toPromise().then(ret => ret.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n/*\r\n    checkSiModificateurPageProductionAlbum(productionId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiModificateurPageProductionAlbum/\"+productionId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }\r\n    checkSiModificateurPageProductionMorceau(morceauId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiModificateurPageProductionMorceau/\"+morceauId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }*/\r\n\r\n    checkUniciteNomMorceau(nom:string,idCourant:number):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/checkUniciteNomMorceau\",{nom,idCourant}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    checkUniciteNomAlbum(nom:string,idCourant:number):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/checkUniciteNomAlbum\",{nom,idCourant}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n\r\n\r\n    deleteMorceau(morceauId:number):Promise<boolean>{\r\n        return this.http.get(\"/api/deleteMorceau/\"+morceauId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n    }\r\n    deleteAlbum(productionId:number):Promise<boolean>{\r\n        return this.http.get(\"/api/deleteAlbum/\"+productionId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n    }\r\n\r\n    getEntrepriseListByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getEntrepriseListByNom\",{nom}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    checkUniciteEntreprise(nom:string):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"checkUniciteEntreprise\",{nom}, { headers: getHeader() }).toPromise().then(res=>res.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n    createEntrepriseSimple(nom:string):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createEntrepriseSimple\",{nom}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n\r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n    }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/production-service.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http, RequestOptions } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport { UtilisateurList } from '../objets/utilisateurList';\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { ObjRetour } from '../objets/ObjRetour';\r\n\r\nimport { urlNodeJs, getHeader, getIdTmp } from './services.config'\r\n\r\n\r\n\r\n@Injectable()\r\nexport class UtilisateurService {\r\n  private headers = new Headers({ 'Content-Type': 'application/json' });\r\n\r\n  constructor(private http: Http) { }\r\n\r\n  checkLoginPassword(login: string, password: string): Promise<UtilisateurDetail> {\r\n    return this.http.post(\"/api/checkConnexion\", { login, password }, { headers: getIdTmp() }).toPromise().then(res => {\r\n      localStorage.setItem(\"tokenSession\", JSON.stringify(res.json().token));\r\n      return res.json().data as UtilisateurDetail;\r\n    }).catch(this.handleError);\r\n  }\r\n\r\n  getUserSansConnexion(): Promise<UtilisateurDetail> {\r\n    return this.http.post(\"/api/checkConnexionAnonyme\", { }, { headers: getIdTmp() }).toPromise().then(res => {\r\n      localStorage.setItem(\"tokenSession\", JSON.stringify(res.json().token));\r\n      return res.json().data as UtilisateurDetail;\r\n    }).catch(this.handleError);\r\n  }\r\n\r\n  getUtilisateurSearch(nom: string, profil: string): Promise<UtilisateurList[]> {\r\n    return this.http.post(\"/api/utilisateurSearch\", { nom, profil }, { headers: getHeader() }).toPromise().then(response => response.json().data as UtilisateurList[]).catch(this.handleError);\r\n  }\r\n  getUtilisateurByMail(mail: string): Promise<UtilisateurDetail> {\r\n    return this.http.post(\"/api/getUtilisateurByMail\", { mail }, { headers: getIdTmp() }).toPromise().then(response => response.json().data as UtilisateurDetail).catch(this.handleError);\r\n  }\r\n  getUtilisateurByLogin(login: string): Promise<UtilisateurDetail> {\r\n    return this.http.post(\"/api/getUtilisateurByLogin\", { login }, { headers: getIdTmp() }).toPromise().then(response => response.json().data as UtilisateurDetail).catch(this.handleError);\r\n  }\r\n  \r\n  resetPassword(login: string): Promise<ObjRetour> {\r\n    return this.http.post(\"/api/resetPassword\", { login }, { headers: getIdTmp() }).toPromise().then(response => response.json() as ObjRetour).catch(this.handleError);\r\n  }\r\n\r\n  getUtilisateur(id: number): Promise<UtilisateurDetail> {\r\n    return this.http.get(\"/api/utilisateurDetail/\" + id, { headers: getHeader() }).toPromise().then(response => response.json().data as UtilisateurDetail).catch(this.handleError);\r\n  }\r\n\r\n  createUtilisateur(nom: string, prenom: string, email: string, password: string, login: string, siSupprimable: boolean, siCompteTemporaire: boolean, profil: string): Promise<number> {\r\n    //let options = new RequestOptions({ headers: this.headers });\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.post(\"/api/createUtilisateur\", { nom, prenom, email, password, login, siSupprimable, siCompteTemporaire, profil }, { headers: header }).toPromise().then(response => response.json().data as number).catch(this.handleError);\r\n  }\r\n  createUtilisateurAutomatique(): Promise<number> {\r\n    return this.http.get(urlNodeJs + \"createUtilisateurAutomatique\", { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n  }\r\n\r\n  updateUtilisateur(id: number, nom: string, prenom: string, email: string, password: string, login: string, siSupprimable: boolean, siCompteTemporaire: boolean, profil: string) {\r\n    //let options = new RequestOptions({ headers: this.headers });\r\n    return this.http.post(\"/api/updateUtilisateur\", { id, nom, prenom, email, password, login, siSupprimable, siCompteTemporaire, profil }, { headers: getHeader() }).toPromise().then(response => response.json().data as number).catch(this.handleError);\r\n  }\r\n\r\n  sendMailNewPassword(mailDestinataire: string, newPwd: string, login: string): Promise<boolean> {\r\n    let sujet = \"Nouveau mot de passe\";\r\n    let content = \"Bonjour,\\nVotre login est : \" + login + \"\\nVoici votre nouveau mot de passe temporaire : \" + newPwd + '\\n\\nCordialement';\r\n\r\n    return this.sendMail(mailDestinataire, sujet, content).then(ret => ret);\r\n\r\n  }\r\n  private sendMail(mailDestinataire: string, sujet: string, content: string): Promise<boolean> {\r\n    //console.log(\"mail:\"+mailDestinataire+\"___\"+sujet+\"____\"+content);\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.post(\"/api/sendMail\", { mailDestinataire, sujet, content }, { headers: header }).toPromise().then(response => response.json().success as boolean).catch(this.handleError);\r\n  }\r\n  getTypeProfilList(): Promise<ObjSimple[]> {\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.get(\"/api/typeProfilList\", { headers: header }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n  }\r\n  updateUtilisateurPassword(utilisateurId: number, pwd: string, siPwdTmp: boolean) {\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.post(\"/api/updateUtilisateurPwd\", { utilisateurId, pwd, siPwdTmp }, { headers: header }).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n  }\r\n  checkNomPrenomUnique(utilisateurId: number, nom: string, prenom: string): Promise<boolean> {\r\n    return this.http.post(\"/api/checkNomPrenomUnique\", { utilisateurId, nom, prenom }, { headers: getHeader() }).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n  }\r\n  checkTrigrammeUnique(utilisateurId: number, trigramme: string): Promise<boolean> {\r\n    return this.http.post(\"/api/checkTrigrammeUnique\", { utilisateurId, trigramme }, { headers: getHeader() }).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n  }\r\n  checkLoginUnique(utilisateurId: number, login: string): Promise<boolean> {\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.post(\"/api/checkLoginUnique\", { utilisateurId, login }, { headers: header }).toPromise().then(res => res.json().success as boolean).catch(this.handleError);\r\n  }\r\n  getPasswordUtilisateur(login: string): Promise<string> {\r\n    let header = getHeader();\r\n    if (header == null) {\r\n      header = getIdTmp();\r\n    }\r\n    return this.http.post(\"/api/getPassword\", { login }, { headers: header }).toPromise().then(res => res.json().data.password as string).catch(this.handleError);\r\n  }\r\n  deleteUtilisateur(utitilisateurId: number): Promise<boolean> {\r\n    return this.http.get(\"/api/deleteUtilisateur/\" + utitilisateurId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n  }\r\n\r\n  generatePassword(): string {\r\n\r\n    var charA = this.generatePwdCorrespondanceLettre(Math.floor((Math.random() * (25 + 1))));\r\n    var charB = this.generatePwdCorrespondanceLettre(Math.floor((Math.random() * (25 + 1))));\r\n    var charC = this.generatePwdCorrespondanceLettre(Math.floor((Math.random() * (25 + 1)))).toLowerCase();\r\n    var charD = this.generatePwdCorrespondanceLettre(Math.floor((Math.random() * (25 + 1)))).toLowerCase();\r\n    var charE = Math.floor((Math.random() * (9 + 1)));\r\n    var charF = this.generatePwdCorrespondanceCaracterreSpeciaux(Math.floor((Math.random() * (20 + 1))));\r\n\r\n    var pwd = charA + charB + charC + charD + charE + charF;\r\n    //console.log(pwd);\r\n    return pwd;\r\n  }\r\n\r\n  generatePwdCorrespondanceCaracterreSpeciaux(num: number): string {\r\n    if (num == 0) return '$';\r\n    if (num == 1) return '@';\r\n    if (num == 2) return '!';\r\n    if (num == 3) return '%';\r\n    if (num == 4) return '*';\r\n    if (num == 5) return '?';\r\n    if (num == 6) return '&';\r\n    if (num == 7) return '?';\r\n    if (num == 8) return '_';\r\n    if (num == 9) return '-';\r\n    if (num == 10) return ':';\r\n    if (num == 11) return ';';\r\n    if (num == 12) return ',';\r\n    if (num == 13) return '§';\r\n    if (num == 14) return '/';\r\n    if (num == 15) return '.';\r\n    if (num == 16) return '+';\r\n    if (num == 17) return '=';\r\n    if (num == 18) return ')';\r\n    if (num == 19) return ')';\r\n    if (num == 20) return '\\'';\r\n\r\n    return \"\";\r\n  }\r\n\r\n\r\n  generatePwdCorrespondanceLettre(num: number): string {\r\n    if (num == 0) return 'A';\r\n    if (num == 1) return 'B';\r\n    if (num == 2) return 'C';\r\n    if (num == 3) return 'D';\r\n    if (num == 4) return 'E';\r\n    if (num == 5) return 'F';\r\n    if (num == 6) return 'G';\r\n    if (num == 7) return 'H';\r\n    if (num == 8) return 'I';\r\n    if (num == 9) return 'J';\r\n    if (num == 10) return 'K';\r\n    if (num == 11) return 'L';\r\n    if (num == 12) return 'M';\r\n    if (num == 13) return 'N';\r\n    if (num == 14) return 'O';\r\n    if (num == 15) return 'P';\r\n    if (num == 16) return 'Q';\r\n    if (num == 17) return 'R';\r\n    if (num == 18) return 'S';\r\n    if (num == 19) return 'T';\r\n    if (num == 20) return 'U';\r\n    if (num == 21) return 'V';\r\n    if (num == 22) return 'W';\r\n    if (num == 23) return 'X';\r\n    if (num == 24) return 'Y';\r\n    if (num == 25) return 'Z';\r\n\r\n\r\n    return \"\";\r\n  }\r\n\r\n\r\n  private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n  }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/utilisateur-service.ts","\r\nimport { sha256 } from 'js-sha256';\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n\r\nexport class Utils {\r\n    anneeMin: number = 1967;\r\n    anneeMax: number = 2016;\r\n    anneeMin2: number = 1930;\r\n\r\n\r\n    public cryptePwd(pwd: string): string {\r\n        return sha256(pwd);\r\n        //décrypte : atob(b);\r\n    }\r\n    public convertDureeStrToSeconde(str: string): number {\r\n        // regex utilisée : \\A(?:(?<hours>\\d{1,2})(?:(h|H)|\\.){0,1})(?:(?<minutes>\\d{1,2})(?:(m|M)|\\.){0,1})(?:(?<seconds>\\d{1,2}){0,1})\\z\r\n        // ou (?:(?:(?<hh>\\d{1,2})[:.hH])?(?<mm>\\d{1,2})[:.mM])?(?<ss>\\d{1,2})\r\n        // ou ^(?:(\\d{1,2})(?:(m|M)|\\.){0,1})(?:(\\d{1,2}){0,1})(?:(s|S|)|\\.)$\r\n        //^(?:(\\d{1,2})(?:(h|H)|\\.){0,1})(?:(\\d{1,2})(?:(m|M)|\\.){0,1})(?:(\\d{1,2}){0,1})(?:(s|S|)|\\.)$\r\n        //^(?:(\\d{1,2})(?:(h|H)|\\.){0,1})(?:([0-5]?\\d)(?:(m|M)|\\.){0,1})(?:([0-5]?\\d){0,1})(?:(s|S|)|\\.)$\r\n        //a modifier, mettre en optionnelle la partie heure et minute\r\n        if (str == null || str.length == 0) return null;\r\n        let hours = 0;\r\n        let minute = 0;\r\n        let seconde = 0;\r\n        str = str.toUpperCase();\r\n\r\n        str = str.replace(\"h\", \"H\");\r\n        str = str.replace(\"m\", \"M\");\r\n        str = str.replace(\"s\", \"\");\r\n        str = str.replace(\"S\", \"\");\r\n\r\n        if ((str.indexOf(\"H\") == -1 && str.indexOf(\"M\") == -1 && str.indexOf(\"S\") == -1)) {\r\n            seconde = +str;\r\n        }\r\n        if (str.indexOf(\"H\") != -1) {\r\n            hours = +str.split(\"H\")[0] * 3600;\r\n            str = str.substring(str.indexOf(\"H\") + 1);\r\n        }\r\n\r\n        if (str.indexOf(\"M\") != -1) {\r\n            minute = +str.split(\"M\")[0] * 60;\r\n            str = str.substring(str.indexOf(\"M\") + 1);\r\n        }\r\n        if (+str > 0) {\r\n            seconde = +str;\r\n        }\r\n\r\n        return hours + minute + seconde;\r\n    }\r\n    \r\n    public convertDureeSecondeToStr(duree: number): string {\r\n        if (duree == null || duree < 0) return null;\r\n        let hours = Math.floor(duree / 3600);\r\n        duree %= 3600;\r\n        let minutes = Math.floor(duree / 60);\r\n        let seconds = duree % 60;\r\n\r\n\r\n        let ret = ((hours != null && hours > 0) ? hours + \"h\" : \"\") + minutes + \"m\" + ((seconds != null && seconds > 0) ? seconds + \"s\" : \"\")\r\n        return ret;\r\n    }\r\n\r\n    public getAnneeList(): number[] {\r\n        return anneeList;\r\n    }\r\n    public getAnneeList2(): number[] {\r\n        let ret:number[]=[];\r\n        let aaaa = new Date().getFullYear() + 1;\r\n\r\n        for (let i = aaaa; i >= this.anneeMin2; i--) {\r\n            let t = i;\r\n            ret.push(t);\r\n        }\r\n\r\n\r\n        return ret;\r\n    }\r\n    public getAnneeListObjSimple(): ObjSimple[] {\r\n        let anneeList: ObjSimple[] = [];\r\n        for (let i = 2016; i >= 1967; i--) {\r\n            let t = new ObjSimple();\r\n            t.id = i;\r\n            t.libelle = i + \"\";\r\n            anneeList.push(t);\r\n        }\r\n\r\n        return anneeList;\r\n    }\r\n    public static checkIsNumber(a: number): boolean {\r\n        return !isNaN(a);\r\n    }\r\n    public checkIsAnnee(a: number): boolean {\r\n        if (a == null || a.toString().length == 0) return true;\r\n        if (a.toString().length != 4) return false;\r\n        if (!Utils.checkIsNumber(a)) return false;\r\n        if (a > this.anneeMax || a < this.anneeMin) return false;\r\n        return true;\r\n    }\r\n\r\n    //convertie une date (format yyyy-MM-dd) en object lisible par les datespicker.\r\n    public convertDate(d: string): Object {\r\n        let s = d.split(\"-\")\r\n        return { date: { year: +s[0], month: +s[1], day: +s[2] } };\r\n    }\r\n    public static checkAnneeDebutAvantFin(debut: string, fin: string): boolean {\r\n        return !(debut != null && fin && debut.length > 0 && fin.length > 0 && debut > fin);\r\n    }\r\n\r\n}\r\n\r\n\r\n\r\nlet anneeList: number[] = [\r\n    2016,\r\n    2015,\r\n    2014,\r\n    2013,\r\n    2012,\r\n    2011,\r\n    2010,\r\n    2009,\r\n    2008,\r\n    2007,\r\n    2006,\r\n    2005,\r\n    2004,\r\n    2003,\r\n    2002,\r\n    2001,\r\n    2000,\r\n    1999,\r\n    1998,\r\n    1997,\r\n    1996,\r\n    1995,\r\n    1994,\r\n    1993,\r\n    1992,\r\n    1991,\r\n    1990,\r\n    1989,\r\n    1988,\r\n    1987,\r\n    1986,\r\n    1985,\r\n    1984,\r\n    1983,\r\n    1982,\r\n    1981,\r\n    1980,\r\n    1979,\r\n    1978,\r\n    1977,\r\n    1976,\r\n    1975,\r\n    1974,\r\n    1973,\r\n    1972,\r\n    1971,\r\n    1970,\r\n    1969,\r\n    1968,\r\n    1967,\r\n];\r\n\r\nfunction objNumerTri(list: number[]) {\r\n    list.sort((a, b) => {\r\n        if (a > b) return -1;\r\n        else if (a < b) return 1;\r\n        else return 0;\r\n    });\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/utils.service.ts","\r\nexport class FilePind {\r\n    id:number;\r\n    file:Array<File>;\r\n    nom:string;\r\n    nomBase:string;\r\n    siDelete:boolean=false;\r\n    siError:boolean=false;\r\n    msg:string;\r\n    siValide:boolean=false;\r\n    \r\n}\r\n\r\nexport abstract class FilePindInObject{\r\n    fileList:FilePind[]=[];\r\n    siFilePresentAllValid:boolean=false;\r\n    siFileNonPresentAllValid:boolean=false;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/FilePind.ts","import { Injectable } from '@angular/core';\r\n\r\nimport { AbstractObjets } from './AbstractObjets'\r\nimport { ObjSimple } from './ObjSimple';\r\n\r\n@Injectable()\r\nexport class ProductionAlbum extends AbstractObjets {\r\n  albumId: number;\r\n  typeAlbumLibelle: string;\r\n  typeAlbumId: number;\r\n  titre: string;\r\n  auteurs: Auteur[] = [];\r\n  groupes: Groupe[] = [];\r\n  editeurs: Editeur[] = [];\r\n  distributeurId: number;\r\n  distributeurNom: string;\r\n  producteurId: number;\r\n  producteurNom: string;\r\n  datePublication: string;\r\n  datePublication2: Object;\r\n  format: number;\r\n  formatStr: string;\r\n  nbrPiste: number;\r\n  dedicace: string;\r\n  support: Support[] = [];\r\n  datePremiereEdition: string;\r\n  datePremiereEdition2: Object;\r\n  dateReedition: DateReedition[] = [];\r\n  mixageId: number;\r\n  mixageLibelle: string;\r\n  masteringId: number;\r\n  masteringLibelle: string;\r\n  conceptionVisuelle: Auteur[] = [];\r\n  tableMatiere: TableMatiere[] = [];\r\n  studio: Studio[] = [];\r\n  categorieId: number;\r\n  categorieLibelle: string;\r\n  motClef: string;\r\n  couvertureTemporelle: string;\r\n  genreId: number;\r\n  genreLibelle: string;\r\n  nbrVente: number;\r\n  nbrTirage: number;\r\n  contexte: string;\r\n  ingenieursSon: Auteur[] = [];\r\n\r\n  lieuOriginCodeInsee: string;\r\n\r\n  siProductionAllValide: boolean = false;\r\n  siTitreValide: boolean = false;\r\n  siDatePublicationValide: boolean = false;\r\n  siDureeValide: boolean = false;\r\n  siMixageIdValide: boolean = false;\r\n  siMasteringIdValide: boolean = false;\r\n  siConceptionVisuelleIdValide: boolean = false;\r\n  siIngenieursSonIdValide: boolean = false;\r\n  siTypeCategorieIdValide: boolean = false;\r\n  siTypeGenreIdValide: boolean = false;\r\n  siDedicaceValide: boolean = false;\r\n  siNbrPisteValide: boolean = false;\r\n  siDatePremiereEditionValide: boolean = false;\r\n  siTypeAlbumIdValide: boolean = false;\r\n  siEditeurIdValide: boolean = false;\r\n  siDistributeurIdValide: boolean = false;\r\n  siProducteurIdValide: boolean = false;\r\n  siStudioIdValide: boolean = false;\r\n  siMotClefValide: boolean = false;\r\n  siMotClefTemporelValide: boolean = false;\r\n  siAuteurAllValide: boolean = false;\r\n  siGroupeAllValide: boolean = false;\r\n  siSupportAllValide: boolean = false;\r\n  siDateReeditionAllValide: boolean = false;\r\n  siTableMatiereAllValide: boolean = false;\r\n  siNbrVenteValide: boolean = false;\r\n  siNbrTirageValide: boolean = false;\r\n  siContexteValide: boolean = false;\r\n}\r\n\r\n\r\nexport class AbstractProductionAlbum {\r\n  siChange: boolean = false;\r\n  siDelete: boolean = false;\r\n  siValide: boolean = false;\r\n}\r\n\r\nexport class Groupe extends AbstractProductionAlbum {\r\n  productionGroupeId: number;\r\n  groupeId: number;\r\n  nom: string;\r\n  siGroupeInconnu: boolean = false;\r\n}\r\nexport class Auteur extends AbstractProductionAlbum {\r\n  productionArtisteId: number;\r\n  personneId: number;\r\n  nom: string;\r\n  siAuteurInconnu: boolean = false;\r\n}\r\nexport class Editeur extends AbstractProductionAlbum {\r\n  productionEntrepriseId: number;\r\n  entrepriseId: number;\r\n  nom: string;\r\n  siEditeurInconnu: boolean = false;\r\n}\r\nexport class Support extends AbstractProductionAlbum {\r\n  id: number;\r\n  typeSupportId: number;\r\n  libelle: string;\r\n}\r\nexport class Studio extends AbstractProductionAlbum {\r\n  productionStudioId: number;\r\n  studioId: number;\r\n  libelle: string;\r\n  siStudioInconnu: boolean = false;\r\n}\r\nexport class Album extends AbstractProductionAlbum {\r\n  albumId: number;\r\n  albumNom: string;\r\n  numeroPisteAlbum: number;\r\n  siAlbumIdValide: boolean = false;\r\n  siNumeroPisteValide: boolean = false;\r\n  siDelete: boolean = false;\r\n}\r\n\r\nexport class TableMatiere extends AbstractProductionAlbum {\r\n  morceauIdOld: number;//garde en mémoire si pour une numero on change de morceau\r\n  morceauId: number;\r\n  numero: string;\r\n  siNumeroNoNumberOrEmpty: boolean = false;\r\n  titre: string;\r\n  siInconnu: boolean = false;\r\n  morceauList: ObjSimple[] = [];\r\n\r\n  siMorceauAlbumIdValide: boolean = false;\r\n  siNumeroValide: boolean = false;\r\n  siNouveau: boolean = false;\r\n}\r\nexport class DateReedition extends AbstractProductionAlbum {\r\n  id: number;\r\n  date: string;\r\n  editeurId: number;\r\n  editeurNom: string;\r\n  distributeurId: number;\r\n  distributeurNom: string;\r\n  producteurId: number;\r\n  producteurNom: string;\r\n  commentaire: string;\r\n\r\n  siDateValide: boolean = false;\r\n  siEditeurValide: boolean = false;\r\n  siDistributeurIdValide: boolean = false;\r\n  siProducteurValide: boolean = false;\r\n  siCommentaireValide: boolean = false;\r\n\r\n\r\n}\r\n\r\nexport function tableMatierSort(list: TableMatiere[]) {\r\n  list.sort((a, b) => {\r\n    let aMatch = a.numero.match(/^([A-Z]+)(\\d+)$/);\r\n    let bMatch = b.numero.match(/^([A-Z]+)(\\d+)$/);\r\n\r\n    if(aMatch && bMatch) {\r\n      if(aMatch[1] == bMatch[1]) {\r\n        if(Number(aMatch[2]) < Number(bMatch[2])) return -1;\r\n        if(Number(aMatch[2]) > Number(bMatch[2])) return 1;\r\n        return 0;\r\n      } else {\r\n        if(aMatch[1] < bMatch[1]) return -1;\r\n        if(aMatch[1] > bMatch[1]) return 1;\r\n        return 0;\r\n      }\r\n    } else {\r\n      if(a.numero < b.numero) return -1;\r\n      if(a.numero > b.numero) return 1;\r\n      return 0;\r\n    }\r\n  });\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/ProductionAlbum.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport { InfoServer } from '../objets/InfoServer';\r\nimport { Pays} from '../objets/Pays';\r\nimport { ObjSimple} from '../objets/ObjSimple';\r\nimport { ActionUtilisateur } from '../objets/ActionUtilisateur';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\nimport { Observable } from 'rxjs/Observable';\r\n\r\n\r\n@Injectable()\r\nexport class GeneralService{\r\n    infoServer:InfoServer=null;\r\n    constructor(private http: Http) { }\r\n\r\n    getPindInfoServer():Promise<InfoServer>{\r\n        return this.http.get(\"/api/getPindInfoServer\", { headers: getHeader() }).toPromise().then(res => res.json() as InfoServer).catch(this.handleError);\r\n    }\r\n\r\n    searchPays(paysId:number,nom:string,langue:string,abv:string):Promise<Pays[]>{\r\n        return this.http.post(\"/api/searchPays\",{paysId,nom,langue,abv}, { headers: getHeader() }).toPromise().then(res => res.json().data as Pays[]).catch(this.handleError);\r\n    }\r\n    getLangueList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getLangueList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getLangueByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getLangueByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createLangueSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createLangueSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    \r\n    \r\n    getGenreList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getGenreList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getLieuList():Promise<ObjSimple[]>{\r\n        return this.http.get(urlNodeJs+\"getLieuList\", { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getLieuByNom(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(urlNodeJs+\"getLieuByNom\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createLieuSimple(libelle:string):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createLieuSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    createGenreSimple(libelle:string):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createGenreSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    getGenreByLibelle(libelle:string):Promise<boolean>{\r\n        return this.http.post(urlNodeJs+\"getGenreByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n    checkUniciteGenreNom(libelle:string):Promise<boolean>{\r\n        return this.http.post(urlNodeJs+\"checkUniciteGenreNom\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n\r\n    //type evenement\r\n    createTypeEvenementSimple(libelle:string):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createTypeEvenementSimple\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().id as number).catch(this.handleError);\r\n    }\r\n    checkUniciteTypeEvenementNom(libelle:string):Promise<boolean>{\r\n        return this.http.post(urlNodeJs+\"checkUniciteTypeEvenementNom\",{libelle}, { headers: getHeader() }).toPromise().then(res => res.json().siUnique as boolean).catch(this.handleError);\r\n    }\r\n    \r\n    getTestAutoComplete(str:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getTestAutoComplete\",{str}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    /*findHeroes = (startsWith: string): Observable<any[]> => {\r\n        return this.http.get(\"/api/getTestAutoComplete/\"+startsWith).map(h => h.json())\r\n    }*/\r\n    getActionUtilisateurList(debut:number,max:number):Promise<ActionUtilisateur[]>{\r\n        return this.http.get(urlNodeJs+\"getActionUtilisateurList/\"+debut+\"/\"+max, { headers: getHeader() }).toPromise().then(res => res.json().data as ActionUtilisateur[]).catch(this.handleError);\r\n    }\r\n\r\n    /*\r\n    download():Promise<any>{\r\n        return this.http.get(\"download\").toPromise().then(res => new Blob([res], { type: \"application/octet-stream\" })).catch(this.handleError);\r\n        //this._reportService.getReport().subscribe(data => this.downloadFile(data)),//console.log(data),\r\n                 //error => console.log(\"Error downloading the file.\"),\r\n                 //() => console.info(\"OK\");\r\n    }*/\r\n    /*\r\n    testDown():any{\r\n        return this.http.get(\"uploads/img.jpg.1495465668377\");\r\n    }*/\r\n\r\n    \r\n    \r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n    }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/general-service.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions,RequestOptionsArgs  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\nimport { PersonneList } from '../objets/Personne-search';\r\nimport { PersonneDetail,PersonneAutreNom,PersonneLieuActivite,PersonneRole } from '../objets/Personne-detail';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Lieu } from '../objets/Lieu';\r\nimport { FilePind } from '../objets/FilePind';\r\n\r\n\r\nimport 'rxjs/add/operator/map';\r\nimport {Observable} from 'rxjs/Observable';\r\n\r\n\r\n@Injectable()\r\nexport class PersonneService{\r\n    constructor(private http: Http) { }\r\n\r\n    getRoleList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getRoleList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getRoleByLibelle(libelle:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getRoleByLibelle\",{libelle}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    createRoleSimple(libelle:string):Promise<number>{\r\n        return this.http.post(\"/api/createRoleSimple\",{libelle}, { headers: getHeader() }).toPromise().then(response => response.json().id as number).catch(this.handleError);\r\n    }\r\n    getGroupeList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getGroupeList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    getLieuList():Promise<Lieu[]>{\r\n        return this.http.get(\"/api/getLieuList\", { headers: getHeader() }).toPromise().then(response => response.json().data as Lieu[]).catch(this.handleError);\r\n    }\r\n    getCiviliteList():Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getCiviliteList\", { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    personneSearch(nom:string,surnom:string,roleId:number,groupeId:number,dateNaissance:string,dateMort:string):Promise<PersonneList[]>{\r\n        return this.http.post(\"/api/personneSearch\",{nom,surnom,roleId,groupeId,dateNaissance,dateMort}, { headers: getHeader() }).toPromise().then(response => response.json().data as PersonneList[]).catch(this.handleError);\r\n    }\r\n    getPersonneDetail(id:number,utilisateurId:number):Promise<PersonneDetail>{\r\n        return this.http.get(\"/api/getPersonneDetail/\"+id+\"/\"+utilisateurId, { headers: getHeader() }).toPromise().then(response => response.json().data as PersonneDetail).catch(this.handleError);\r\n    }\r\n   /*createPersonne(nom:string,prenom:string,dateNaissance:string,dateNaissanceIncertaineDeb:string,dateNaissanceIncertaineFin:string,lieuNaissanceId:number,dateMort:string,dateMortIncertaineDeb:string,dateMortIncertaineFin:string,lieuMortId:number,biographie:string,civiliteId:number,autreNomVariante:PersonneAutreNom[],autreNomSurnoms:PersonneAutreNom[],roleList:PersonneRole[],periodeActivite:PersonnePeriodeActivite[],lieuActivite:PersonneLieuActivite[],fileList:FilePind[],lieuNaissanceLibelle:string,lieuMortLibelle:string):Promise<number>{\r\n        return this.http.post(\"createPersonne\",{nom,prenom,dateNaissance,dateNaissanceIncertaineDeb,dateNaissanceIncertaineFin,lieuNaissanceId,dateMort,dateMortIncertaineDeb,dateMortIncertaineFin,lieuMortId,biographie,civiliteId,autreNomVariante,autreNomSurnoms,roleList,periodeActivite,lieuActivite,fileList,lieuNaissanceLibelle,lieuMortLibelle}).toPromise().then(response => response.json().id as number).catch(this.handleError);\r\n    }*/\r\n    createOrUpdatePersonne(personneId:number,nom:string,prenom:string,dateNaissance:string,dateNaissanceIncertaineDeb:string,dateNaissanceIncertaineFin:string,lieuNaissanceId:number,dateMort:string,dateMortIncertaineDeb:string,dateMortIncertaineFin:string,lieuMortId:number,biographie:string,civiliteId:number,autreNomVariante:PersonneAutreNom[],autreNomSurnoms:PersonneAutreNom[],roleList:PersonneRole[],/*periodeActivite:PersonnePeriodeActivite[],*/lieuActivite:PersonneLieuActivite[],fileList:FilePind[],lieuNaissanceLibelle:string,lieuMortLibelle:string,siValidationMode:boolean,siNomValid:boolean,siPrenomValid:boolean,siCiviliteValid:boolean,siDateNaissancePreciseValid:boolean,detail:PersonneDetail,modificateurId:number):Promise<number>{\r\n        return this.http.post(\"/api/createOrUpdatePersonne\",{personneId,nom,prenom,dateNaissance,dateNaissanceIncertaineDeb,dateNaissanceIncertaineFin,lieuNaissanceId,dateMort,dateMortIncertaineDeb,dateMortIncertaineFin,lieuMortId,biographie,civiliteId,autreNomVariante,autreNomSurnoms,roleList,/*periodeActivite,*/lieuActivite,fileList,lieuNaissanceLibelle,lieuMortLibelle,siValidationMode,siNomValid,siPrenomValid,siCiviliteValid,siDateNaissancePreciseValid,detail,modificateurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n    createPersonneSimple(nom:string,prenom:string,createurId:number):Promise<number>{\r\n        return this.http.post(urlNodeJs+\"createPersonneSimple\",{nom,prenom,createurId}, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n    createGroupeCompositionArtisteRoleSimple(personneId:number,typeRoleId:number):Promise<number>{\r\n        //console.log(\"personne service createGroupeCompositionArtisteRoleSimple:\"+personneId+\"__\"+typeRoleId);\r\n        return this.http.get(urlNodeJs+\"createGroupeCompositionArtisteRoleSimple/\"+personneId+\"/\"+typeRoleId, { headers: getHeader() }).toPromise().then(res=>res.json().id as number).catch(this.handleError);\r\n    }\r\n    /*\r\n    checkSiModificateurPage(personneId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiModificateurPagePersonne/\"+personneId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as boolean).catch(this.handleError);\r\n    }*/\r\n    /*\r\n    checkSiModificateurPage(personneId:number,utilisateurId:number):Promise<boolean>{\r\n        return this.http.get(urlNodeJs+\"checkSiModificateurPagePersonne/\"+personneId+\"/\"+utilisateurId).toPromise().then(res => res.json().ok as any);\r\n    }*/\r\n/*\r\n    getPersonneByConcatNomPrenomRoleSansGroupe(nomPrenomRole:string):Promise<ObjSimple[]>{\r\n        return this.http.get(\"/api/getPersonneListByConcatNomPrenomRole/\"+nomPrenomRole).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }*/\r\n    getPersonneByConcatNomPrenom(nomPrenom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getPersonneListByConcatNomPrenom\",{nomPrenom}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    \r\n    getPersonneListByNom(nom:string):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/getPersonneListByNom\",{nom}, { headers: getHeader() }).toPromise().then(res => res.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n\r\n    checkPersonneUniciteNomPersonne(nom:string,prenom:string,idCourant:number):Promise<ObjSimple[]>{\r\n        return this.http.post(\"/api/checkPersonneUniciteNomPersonne\",{nom,prenom,idCourant}, { headers: getHeader() }).toPromise().then(response => response.json().data as ObjSimple[]).catch(this.handleError);\r\n    }\r\n    deletePersonne(personneId:number):Promise<boolean>{\r\n        return this.http.get(\"/api/deletePersonne/\"+personneId, { headers: getHeader() }).toPromise().then(res => res.json().siSuccess as boolean).catch(this.handleError);\r\n    }\r\n    \r\n\r\n/*\r\n    testImg():Promise<string>{\r\n        console.log(\"bbbbbbbbbbbbbbbbbbbbbbbbb\");\r\n        return this.http.get(\"testImage\").toPromise().then(res => res.json().data as string).catch(this.handleError);\r\n    }\r\n    testImg2(formData:FormData):Promise<string>{\r\n        let headers: Headers = new Headers();\r\n        headers.append('Content-Type', 'application/x-www-form-urlencoded');\r\n\r\n        let options: RequestOptionsArgs = { headers: headers };\r\n\r\n        return this.http.post(\"testImage2\",formData,options).toPromise().then(ret => ret.json().data as string).catch(this.handleError);\r\n    }\r\n\r\n    postWithFile ( formData:FormData) {\r\n\r\n    let headers = new Headers();\r\n\r\n    \r\n    var returnReponse = new Promise((resolve, reject) => {\r\n      this.http.post(\"testImage2\", formData, {\r\n        headers: headers\r\n      }).subscribe(\r\n          res => {\r\n            \r\n          },\r\n          error => {\r\n            \r\n          }\r\n      );\r\n    });\r\n    return returnReponse;\r\n  }*/\r\n\r\n    private handleError(error: any): Promise<any> {\r\n    console.error('An error occurred', error);\r\n    return Promise.reject(error.message || error);\r\n    }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/personnne-service.ts","function webpackEmptyContext(req) {\n\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nmodule.exports = webpackEmptyContext;\nwebpackEmptyContext.id = 652;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src async\n// module id = 652\n// module chunks = 1","import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { enableProdMode } from '@angular/core';\r\nimport { environment } from './environments/environment';\r\nimport { AppModule } from './app/app.module';\r\n\r\nif (environment.production) {\r\n  enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.ts","import { Component } from '@angular/core';\r\n\r\n\r\n@Component({\r\n  selector: 'my-app',\r\n  template: '<router-outlet></router-outlet>'\r\n  \r\n})\r\nexport class AppComponent {  }\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.component.ts","import { NgModule }      from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { FormsModule, ReactiveFormsModule }   from '@angular/forms';\r\nimport { Headers, Http, HttpModule } from '@angular/http';\r\n\r\n//import { LoginComponent }  from './controllers/login.component';\r\n\r\nimport { PersonneService }  from './services/personnne-service';\r\nimport { GroupeService} from './services/groupe-service';\r\nimport { ProductionService }  from './services/production-service';\r\nimport { UtilisateurService } from './services/utilisateur-service';\r\nimport { Utils } from './services/utils.service';\r\nimport { GeneralService }  from './services/general-service';\r\nimport { FileService }  from './services/file-service';\r\nimport { LieuService }  from './services/lieu-service';\r\nimport { EvenementService }  from './services/evenement-service';\r\n\r\n\r\n\r\nimport { AppComponent }  from './app.component';\r\nimport { HeaderComponent } from './components/header.component';\r\nimport { NavbarComponent } from './components/navbar.component';\r\n\r\nimport { GroupesListComponent } from './components/groupesList.component';\r\n/*import { GroupesCreationComponent } from './controllers/groupesCreation.component';*/\r\n//import { GroupeDetailComponent } from './controllers/groupe-detail.component';\r\n\r\nimport { PersonneListComponent } from './components/personneList.component';\r\n//import { PersonneDetailComponent } from './controllers/personneDetail.component';\r\n\r\nimport { ProductionListComponent } from './components/productionList.component';\r\nimport { ProductionAlbumDetailComponent } from './components/production-album-detail.component';\r\nimport { ProductionMorceauDetailComponent } from './components/production-morceau-detail.component';\r\n\r\nimport { EvenementDetailComponent }  from './components/evenement-detail.component';\r\nimport { EvenementListComponent }  from './components/evenementList.component';\r\n\r\nimport { LoginComponent }  from './components/login.component';\r\nimport { LoginPasswordTemporaireComponent } from './components/login-password-temporaire.component';\r\nimport { UtilisateurMonCompteComponent } from './components/utilisateur-mon-compte.component';\r\nimport { UtilisateurListComponent } from './components/utilisateur-list.component';\r\nimport { UtilisateurDetailComponent } from './components/utilisateur-detail.component';\r\nimport { MdpOublieComponent } from './components/mdp-oublie.component';\r\nimport { UtilisateurInscriptionComponent } from './components/utilisateur-inscription.component';\r\n\r\nimport { ErrorPageComponent } from './components/error-page.component';\r\nimport { ErrorDroitAccessComponent } from './components/error-droit-access.component';\r\nimport { ErrorPageNotFoundComponent } from './components/error-page-notFound.component';\r\nimport { ErrorTimeOutSessionComponent } from './components/error-time-out-session.component';\r\n\r\nimport { DetailMessageComponent } from './components/tag/detail-message.component';\r\nimport { DetailInfoUtilisateurComponent } from './components/tag/detail-info-utilisateur.component';\r\nimport { OtherChildComponent } from './components/test.component';\r\n\r\nimport { TestPageComponent } from './components/test-page.component';\r\nimport { TestInputComponent } from './components/Test-tag.component';\r\nimport { PInputComponent } from './components/tag/p-input.component';\r\nimport { PLabelComponent } from './components/tag/p-label.component';\r\nimport { PFileComponent } from './components/tag/p-file.component';\r\nimport { PCreateGroupeSimpleComponent } from './components/tag/p-create-groupe-simple.component';\r\nimport { PCreatePersonneSimpleComponent } from './components/tag/p-create-personne-simple.component';\r\nimport { PCreateAlbumSimpleComponent } from './components/tag/p-create-album-simple.component';\r\nimport { PCreateMorceauSimpleComponent } from './components/tag/p-create-morceau-simple.component';\r\nimport { PAutoCompleteComponent } from './components/tag/p-auto-complete.component';\r\nimport { PAutoCompleteLieuApiComponent } from './components/tag/p-auto-complete-lieu-api.component';\r\nimport { PCreatePersonneRoleSimpleComponent } from './components/tag/p-create-personne-role-simple.component';\r\nimport { PSelectComponent } from './components/tag/p-select.component';\r\nimport { PCreateGenreSimpleComponent } from './components/tag/p-create-genre-simple.component';\r\n//import { PCreateStatutGroupeSimpleComponent } from './components/tag/p-create-statut-groupe-simple.component';\r\nimport { PCreateLieuSimpleComponent } from './components/tag/p-create-lieu-simple.component';\r\nimport { PCreateRoleSimpleComponent } from './components/tag/p-create-role-simple.component';\r\nimport { PCreateTonaliteSimpleComponent } from './components/tag/p-create-tonalite-simple.component';\r\nimport { PCreateLangueSimpleComponent } from './components/tag/p-create-langue-simple.component';\r\nimport { PCreateTypeAlbumSimpleComponent } from './components/tag/p-create-type-album-simple.component';\r\nimport { PCreateMixageSimpleComponent } from './components/tag/p-create-mixage-simple.component';\r\nimport { PCreateMasteringSimpleComponent } from './components/tag/p-create-mastering-simple.component';\r\nimport { PCreateStudioSimpleComponent } from './components/tag/p-create-studio-simple.component';\r\nimport { PCreateCategorieAlbumSimpleComponent } from './components/tag/p-create-categorie-album-simple.component';\r\nimport { PCreateSubdivisionComponent } from './components/tag/p-create-subdivision-simple.component';\r\nimport { PCreateSupportSimpleComponent } from './components/tag/p-create-support-simple.component';\r\nimport { PCreateEntrepriseSimpleComponent } from './components/tag/p-create-entreprise-simple.component';\r\nimport { PCreateOrganologieSimpleComponent } from './components/tag/p-create-organologie-simple.component';\r\nimport { PCreateTypeEvenementSimpleComponent } from './components/tag/p-create-type-evenement-simple.component';\r\n\r\nimport { PersonneDetailComponent } from './components/personneDetail.component';\r\nimport { GroupeDetailComponent } from './components/groupe-detail.component';\r\nimport { AccueilComponent } from './components/accueil.component';\r\n\r\nimport { ListeObjetsComponent } from './components/liste-objets.component';\r\n\r\n\r\nimport { MyDatePickerModule } from 'mydatepicker';\r\n//import { TestDatePicker } from './objets/testDatePicker';\r\n//import { Ng2CompleterModule } from \"ng2-completer\";\r\n/*import { DatePickerModule } from 'ng2-datepicker';\r\n*/\r\n import { NguiAutoCompleteModule } from '@ngui/auto-complete';\r\n import { ClickOutsideModule } from 'ng-click-outside';\r\n\r\n\r\nimport { OrderBy }  from './pipe/orderBy';\r\nimport { Format }  from './pipe/format';\r\n\r\nimport { FileSelectDirective } from 'ng2-file-upload';\r\n\r\n/* permet de créer des <alert type=\"info\">hello</alert> à la place des <div class=\" alert alert-info\">, et surement d'autres chose */\r\nimport { AlertModule } from 'ngx-bootstrap';\r\n\r\n//import { GroupeDetailTestComponent } from './components/groupe-detail-test.component';\r\n\r\nconst appRoutes: Routes = [\r\n  \r\n  //{ path: 'accueil', redirectTo: '/groupesList', pathMatch: 'full' },\r\n  { path: 'groupesList', component: GroupesListComponent },\r\n /* { path: 'groupesCreation', component: GroupesCreationComponent },*/\r\n  { path: 'personneList', component: PersonneListComponent },\r\n  //{ path: 'personneDetail', component: PersonneDetailComponent },\r\n  //{ path: 'personneDetail/:id/:mode', component: PersonneDetailComponent },\r\n  { path: 'personneDetail/:id/:mode', component: PersonneDetailComponent },\r\n  { path: 'productionList', component: ProductionListComponent },\r\n  { path: 'productionAlbumDetail/:id/:mode', component: ProductionAlbumDetailComponent },\r\n  { path: 'productionMorceauDetail/:id/:mode', component: ProductionMorceauDetailComponent },\r\n  { path: 'evenementList', component: EvenementListComponent },\r\n  { path: 'evenementDetail/:id/:mode', component: EvenementDetailComponent },\r\n  //{ path: 'groupeDetail/:id/:mode', component: GroupeDetailComponent },\r\n  { path: 'groupeDetail/:id/:mode', component: GroupeDetailComponent },\r\n  { path: 'login',  component: LoginComponent},\r\n  { path: 'mdpOublie',  component: MdpOublieComponent },\r\n  { path: 'login-password-temporaire',  component: LoginPasswordTemporaireComponent },\r\n  { path: 'utilisateurList',  component: UtilisateurListComponent},\r\n  { path: 'utilisateurDetaila/:id/:mode',  component: UtilisateurDetailComponent },\r\n  { path: 'utilisateurMonCompte',  component: UtilisateurMonCompteComponent },\r\n  { path: 'inscription',  component: UtilisateurInscriptionComponent },\r\n  { path: 'accueil',  component: AccueilComponent },\r\n  { path: 'listObjets',  component: ListeObjetsComponent },\r\n  { path: 'erreurPage',  component: ErrorPageComponent},\r\n  { path: 'erreurDroitAcces',  component: ErrorDroitAccessComponent},\r\n  { path: 'erreurPageNotFound',  component: ErrorPageNotFoundComponent},\r\n  { path: 'erreurTimeOut',  component: ErrorTimeOutSessionComponent},\r\n\r\n  { path: 'test',  component: TestPageComponent},\r\n  //{ path: 'groupeDetailTest/:id/:mode', component: GroupeDetailTestComponent },\r\n\r\n  { path: '', redirectTo: '/login', pathMatch: 'full' },\r\n  { path: '**',  redirectTo: '/erreurPageNotFound'},\r\n\r\n  //{ path: 'personneDetailValidation/:id/:mode', component: PersonneDetailValidationComponent },\r\n  //{ path: 'groupeDetailValidation/:id/:mode', component: GroupeDetailValidationComponent },\r\n];\r\n\r\n\r\n@NgModule({\r\n  imports:      [ BrowserModule, RouterModule.forRoot(appRoutes, { useHash: true }), FormsModule,HttpModule,MyDatePickerModule,/*Ng2CompleterModule,/* ,DatePickerModule*/ReactiveFormsModule,NguiAutoCompleteModule,AlertModule.forRoot(),ClickOutsideModule ],\r\n  declarations: [ AppComponent, HeaderComponent, NavbarComponent, GroupesListComponent,/* GroupesCreationComponent,*/PersonneListComponent,OrderBy,Format/*,PersonneDetailComponent*/,ProductionListComponent,ProductionAlbumDetailComponent, /*LoginComponent,*/ FileSelectDirective,ProductionMorceauDetailComponent/*,GroupeDetailComponent*/,\r\n                  LoginComponent,LoginPasswordTemporaireComponent,UtilisateurMonCompteComponent,UtilisateurListComponent,UtilisateurDetailComponent,MdpOublieComponent,\r\n                  ErrorPageComponent,ErrorDroitAccessComponent,ErrorPageNotFoundComponent,ErrorTimeOutSessionComponent,PersonneDetailComponent,GroupeDetailComponent,TestPageComponent,TestInputComponent,\r\n                  DetailMessageComponent,DetailInfoUtilisateurComponent,OtherChildComponent,PInputComponent,PLabelComponent,PFileComponent,PCreateGroupeSimpleComponent,PCreatePersonneSimpleComponent,PCreateAlbumSimpleComponent,PCreateMorceauSimpleComponent,PAutoCompleteComponent,PCreatePersonneRoleSimpleComponent,PSelectComponent, EvenementDetailComponent, EvenementListComponent, PCreateGenreSimpleComponent,/*PCreateStatutGroupeSimpleComponent,*/PCreateLieuSimpleComponent,PCreateRoleSimpleComponent,PCreateTonaliteSimpleComponent,PCreateLangueSimpleComponent,PCreateTypeAlbumSimpleComponent,PCreateMixageSimpleComponent,PCreateMasteringSimpleComponent,PCreateStudioSimpleComponent,PCreateCategorieAlbumSimpleComponent,PCreateSubdivisionComponent,PCreateSupportSimpleComponent,PCreateEntrepriseSimpleComponent,PCreateOrganologieSimpleComponent,\r\n                  UtilisateurInscriptionComponent,AccueilComponent,ListeObjetsComponent,PAutoCompleteLieuApiComponent,PCreateTypeEvenementSimpleComponent],\r\n  providers:    [PersonneService, GroupeService, ProductionService,Utils,GeneralService,FileService,UtilisateurService,LieuService, EvenementService],\r\n  bootstrap:    [ AppComponent ]\r\n})\r\n\r\nexport class AppModule { }\r\n\r\n\r\n/*\r\nCopyright 2017 Google Inc. All Rights Reserved.\r\nUse of this source code is governed by an MIT-style license that\r\ncan be found in the LICENSE file at http://angular.io/license\r\n*/\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.module.ts","import { Component, EventEmitter, Input, Output,OnInit } from '@angular/core';\r\n\r\nlet strInput = '<input type=\"text\" id=\"nom\" name=\"nom\" (keyup)=\"onChange()\" [(ngModel)]=\"detailName\" class=\"form-control\"  #nom=\"ngModel\" >';\r\nlet  strSpan = \"<span>{{detailName}}</span>\";\r\n\r\nlet toto:string = \"<div *ngIf=\\\"siInput\\\">\"+strInput+\"</div><div *ngIf=\\\"!siInput\\\">\"+strSpan+\"</div>\";\r\n\r\n@Component({\r\n  selector: 'jinput0',\r\n  //template: '<input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"{{valueName}}\" class=\"form-control\"  #{{id}}=\"ngModel\" >'\r\n  template: toto\r\n})\r\n\r\nexport class TestInputComponent implements OnInit {\r\n  //@Input() id: string; \r\n  //@Input() name: string;\r\n  //@Input() valueName: string;\r\n  //@Input() detail: any;\r\n  @Input() detailName: Object;\r\n  @Input() siInput: boolean;\r\n  @Output() valueRetour= new EventEmitter<Object>();\r\n  \r\n \r\n\r\n\r\n  constructor() {\r\n    // Update user\r\n    // ...\r\n    //this.userUpdated.emit(this.detailName);\r\n  }\r\n\r\n  ngOnInit(){\r\n    //if(this.siInput) toto = this.strInput;\r\n    //else toto=this.strSpan;\r\n  }\r\n\r\n  onChange(){\r\n    //console.log(\"output onChange:\"+this.detailName);\r\n    this.valueRetour.emit(this.detailName);\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/Test-tag.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\n\r\nimport { AbstractSearchComponent } from './abstract-search.compenent';\r\n\r\nimport { GeneralService } from '../services/general-service';\r\n\r\nimport { ActionUtilisateur } from '../objets/ActionUtilisateur';\r\n\r\n@Component({\r\n\r\n  selector: 'accueil',\r\n  templateUrl: '../vue/accueil.component.html'\r\n})\r\n\r\n\r\nexport class AccueilComponent extends AbstractSearchComponent implements OnInit {\r\n\r\n  actionList: ActionUtilisateur[] = [];\r\n  \r\n  maxAffichage: number = 20;\r\n  index:number=0;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected generalService: GeneralService\r\n  ) { super(router) };\r\n\r\n\r\n  ngOnInit(): void {\r\n    super.ngOnInit();\r\n    this.recherche();\r\n  }\r\n  recherche() {\r\n    this.generalService.getActionUtilisateurList(this.index, this.maxAffichage).then(res => {\r\n      this.actionList = res;\r\n    });\r\n  }\r\n  getInfoMode(a: ActionUtilisateur): string {\r\n    if (a.siCreation) return \"création\";\r\n    if (a.siModification) return \"modification\"\r\n    if (a.siSuppression) return \"suppression\"\r\n    return \"\";\r\n  }\r\n  getInfoTypePrefix(a: ActionUtilisateur): string {\r\n    if (a.groupeId != null) return \"du \";\r\n    if (a.personneId != null) return \"de la \";\r\n    if (a.albumId != null) return \"de l'\";\r\n    if (a.morceauId != null) return \"du \";\r\n    if (a.evenementLibelle != null) return \"de l'\";\r\n\r\n    return \"\";\r\n  }\r\n  getInfoType(a: ActionUtilisateur): string {\r\n    if (a.groupeId != null) return \"groupe\";\r\n    if (a.personneId != null) return \"personne\";\r\n    if (a.albumId != null) return \"album\";\r\n    if (a.morceauId != null) return \"morceau\";\r\n    if (a.evenementLibelle != null) return \"événement\";\r\n    return \"\";\r\n  }\r\n  getInfoTypeNom(a: ActionUtilisateur): string {\r\n    if (a.groupeId != null) return a.groupeLibelle;\r\n    if (a.personneId != null) return a.personneLibelle;\r\n    if (a.albumId != null) return a.albumLibelle;\r\n    if (a.morceauId != null) return a.morceauLibelle;\r\n    if (a.evenementLibelle != null) return a.evenementLibelle;\r\n    return \"\";\r\n  }\r\n  getInfoUtilisateur(a: ActionUtilisateur):string{\r\n    if(a.typeProfilCode=='PUBLIC_NON_CONNECTE') return \"Compte temporaire\"\r\n    let str = \"\";\r\n    str+=a.utilisateurNom;\r\n    if(a.utilisateurPrenom!=null && a.utilisateurPrenom.length>0) str+= \", \"+a.utilisateurPrenom;\r\n    str+=\" (\"+a.utilisateurLogin+\", \"+a.typeProfilLibelle+\")\"\r\n    return str;\r\n  }\r\n\r\n\r\n  goToDetail(a: ActionUtilisateur, modeRedirect: string) {\r\n    if (a.groupeId != null && a.groupeId > 0) {\r\n      this.router.navigate(['/groupeDetail', a.groupeId + \"-\" + a.groupeLibelle, modeRedirect]);\r\n    } else if (a.personneId != null && a.personneId > 0) {\r\n      this.router.navigate(['/personneDetail', a.personneId + \"-\" + a.personneLibelle, modeRedirect]);\r\n    } else if (a.albumId != null && a.albumId > 0) {\r\n      this.router.navigate(['/productionAlbumDetail', a.albumId + \"-\" + a.albumLibelle, modeRedirect]);\r\n    } else if (a.morceauId != null && a.morceauId > 0) {\r\n      this.router.navigate(['/productionMorceauDetail', a.morceauId + \"-\" + a.morceauLibelle, modeRedirect]);\r\n    } else if (a.evenementId != null && a.evenementId > 0) {\r\n      this.router.navigate(['/evenementDetail', a.evenementId + \"-\" + a.evenementLibelle, modeRedirect]);\r\n    }\r\n  }\r\n  initPageSearch(): void { }\r\n  onSubmit() { };\r\n\r\n  traitementResultSearch() { }\r\n\r\n  voirSuivant() {\r\n    this.index=this.index+this.maxAffichage;\r\n    this.recherche();\r\n  }\r\n  voirPrecendent() {\r\n    this.index=this.index-this.maxAffichage;\r\n    if(this.index<0) this.index=0; \r\n    this.recherche();\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/accueil.component.ts","import { Component } from '@angular/core';\r\nimport {Location} from '@angular/common';\r\n\r\nimport { AbstractErrorPage } from './abstract-error-page.component';\r\n\r\n@Component({\r\n    \r\n selector: 'error-droit-acces',\r\n  templateUrl: '../vue/abstract-error-page.component.html'\r\n})\r\n\r\nexport class ErrorDroitAccessComponent extends AbstractErrorPage{\r\n   \r\n constructor(private _location: Location\r\n  ){super()};\r\n\r\n  getTypePageTexte():string{\r\n    return \"Vous n'avez pas les droits d'accès pour cette page.\";\r\n  }\r\n  numberGoBack():number{\r\n    return -2;\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/error-droit-access.component.ts","import { Component } from '@angular/core';\r\nimport {Location} from '@angular/common';\r\n\r\nimport { AbstractErrorPage } from './abstract-error-page.component';\r\n\r\n@Component({\r\n    \r\n selector: 'error-droit-acces',\r\n  templateUrl: '../vue/abstract-error-page.component.html'\r\n})\r\n\r\nexport class ErrorPageNotFoundComponent extends AbstractErrorPage{\r\n   \r\n constructor(){super()};\r\n getTypePageTexte():string{\r\n    return \"Page inexistante.\";\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/error-page-notFound.component.ts","import { Component } from '@angular/core';\r\n\r\nimport { AbstractErrorPage } from './abstract-error-page.component';\r\n\r\n@Component({\r\n    \r\n selector: 'error-droit-acces',\r\n  templateUrl: '../vue/abstract-error-page.component.html'\r\n})\r\n\r\nexport class ErrorPageComponent extends AbstractErrorPage{\r\n   \r\n  constructor(){super()};\r\n  \r\n  getTypePageTexte():string{\r\n    return \"Erreur système.\";\r\n  }\r\n  numberGoBack():number{\r\n    return -2;\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/error-page.component.ts","import { Component,OnInit } from '@angular/core';\r\nimport {Location} from '@angular/common';\r\n\r\nimport { AbstractErrorPage } from './abstract-error-page.component';\r\n\r\n@Component({\r\n    \r\n selector: 'error-time-out-session',\r\n  templateUrl: '../vue/abstract-error-page.component.html'\r\n})\r\n\r\nexport class ErrorTimeOutSessionComponent extends AbstractErrorPage implements OnInit{\r\n   \r\n constructor(private _location: Location\r\n  ){super()};\r\n\r\n  ngOnInit(){\r\n    this.allMessage =false;\r\n    this.siRedirectLogin = true;\r\n  }\r\n  \r\n\r\n  getTypePageTexte():string{\r\n    return \"Votre session a expiré.\";\r\n  }\r\n  numberGoBack():number{\r\n    return -2;\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/error-time-out-session.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\n\r\n//import { GroupeService } from '../services/groupe-service';\r\n//import { Utils } from '../services/utils.service';\r\n//import { GeneralService } from '../services/general-service';\r\n//import { PersonneService } from '../services/personnne-service';\r\n//import { ProductionService } from '../services/production-service';\r\nimport { FileService } from '../services/file-service';\r\nimport { EvenementService } from '../services/evenement-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Lieu } from '../objets/Lieu';\r\nimport { EvenementDetail, TypeEvenement, ArtisteEvenement, GroupeEvenement } from '../objets/Evenement-detail';\r\nimport { LieuOSM } from '../objets/LieuOSM';\r\n\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nimport { IMyOptions, IMyDateModel } from 'mydatepicker';\r\n\r\nimport { IDetail } from './iDetail.component';\r\nimport { FilePind } from '../objets/FilePind';\r\n\r\n@Component({\r\n\r\n  selector: 'evenement-detail',\r\n  templateUrl: '../vue/evenement-detail.html'\r\n})\r\n\r\n\r\nexport class EvenementDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n\r\n  detail: EvenementDetail;\r\n\r\n  lieuList: Lieu[] = [];\r\n  typeEvenementList: ObjSimple[] = [];\r\n  subdivisionList: ObjSimple[] = [];\r\n\r\n\r\n  siNomUnique = true;\r\n  //siGenreInconnu=false;\r\n  siAnneeCreationOk = true;\r\n  siAnneeFinOk = true;\r\n  siAnneeDebAvantFin = false;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected route: ActivatedRoute,\r\n    //private groupeService: GroupeService,\r\n    //private utilsService: Utils,\r\n    //private productionService: ProductionService,\r\n    //private generalService: GeneralService,\r\n    //private personneService: PersonneService,\r\n    private evenementService: EvenementService,\r\n    protected fileService: FileService,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n\r\n  setDetailId(id: number) {\r\n    if (this.detail == null) this.detail = new EvenementDetail();\r\n    if (id <= 0) this.detail.evenementId = null;\r\n    else this.detail.evenementId = id;\r\n  };\r\n  getDetailObj(): any {\r\n    return this.detail;\r\n  }\r\n  getCreateurId(): number {\r\n    return this.detail.createur.utilisateurId;\r\n  }\r\n\r\n\r\n  initById() {\r\n    if (this.detail.evenementId != null) {\r\n      this.evenementService.getEvenementById(this.detail.evenementId).then(res => {\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return;\r\n        }\r\n        this.detail = res;\r\n        this.aftherInitById();\r\n        //this.convertDetailDate();\r\n        //console.log(\"test resultat artiste list:\" + res.artisteListEvenement.length);\r\n      });\r\n    } else {\r\n\r\n    }\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n\r\n    this.detail.siTypeEvenementIconnu = false;\r\n\r\n    //this.evenementService.getLieuList().then(res => { this.lieuList = res; });\r\n    //this.evenementService.getTypeEvenementList().then(res => { this.typeEvenementList = res; });\r\n    //this.evenementService.getSubdivisionList().then(res => { this.subdivisionList = res; });\r\n  }\r\n  checkSiFormulaireValide(): boolean {\r\n\r\n    if (this.detail.artisteListEvenement != null) {\r\n      for (let i = 0; i < this.detail.artisteListEvenement.length; i++) {\r\n        if (!this.detail.artisteListEvenement[i].siDelete && this.detail.artisteListEvenement[i].siArtisteEvenementInconnu) return false;\r\n      }\r\n    }\r\n\r\n    if (this.detail.groupeListEvenement != null) {\r\n      for (let i = 0; i < this.detail.groupeListEvenement.length; i++) {\r\n        if (!this.detail.groupeListEvenement[i].siDelete && this.detail.groupeListEvenement[i].siGroupeEvenementInconnu) return false;\r\n      }\r\n    }\r\n    if(this.detail.siTypeEvenementIconnu) return false;\r\n    return true;\r\n  }\r\n\r\n  validationFormulaire(): boolean {\r\n\r\n    if (this.detail.evenementNom == null || this.detail.evenementNom.trim().length <= 0) return false;\r\n\r\n\r\n    if (this.detail.artisteListEvenement != null) {\r\n      for (let i = 0; i < this.detail.artisteListEvenement.length; i++) {\r\n        if (this.detail.artisteListEvenement[i].siArtisteEvenementInconnu && !this.detail.artisteListEvenement[i].siDelete) return false;\r\n      }\r\n    }\r\n\r\n\r\n    if (this.detail.groupeListEvenement != null) {\r\n      for (let i = 0; i < this.detail.groupeListEvenement.length; i++) {\r\n        if (this.detail.groupeListEvenement[i].siGroupeEvenementInconnu && !this.detail.groupeListEvenement[i].siDelete) return false;\r\n      }\r\n    }\r\n    if(this.detail.siTypeEvenementIconnu) return false;\r\n    return true;\r\n  }\r\n\r\n\r\n  createOrUpdate() {\r\n    \r\n    this.evenementService.createOrUpdateEvenement(this.detail.evenementId, this.detail.evenementDate, this.detail.evenementNom, this.detail.evenementLieuId, this.detail.evenementLieuLibelle, this.detail.evenementTypeId, this.detail.evenementTypeLibelle, this.detail.subdivisionId, this.detail.adresse, this.detail.artisteListEvenement, this.detail.groupeListEvenement, this.detail.evenementDesc, this.detail.fileList, this.detail,this.user.utilisateurId).then(ret => {\r\n      this.createOrUpdateResultat(ret);\r\n    });\r\n  }\r\n\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.changeAllUnitValid();\r\n    if (this.detail.siEvenementAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n  }\r\n\r\n  getSiAllValid(): boolean {\r\n    return this.detail.siEvenementAllValide;\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.detail.siEvenementAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n\r\n  }\r\n\r\n\r\n  checkUniciteNomEvenement() {\r\n    if (this.detail.evenementNom != null && this.detail.evenementNom.length > 0) {\r\n      this.evenementService.checkUniciteNomEvenement(this.detail.evenementNom, this.detail.evenementId).then(ret => this.siNomUnique = ret);\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n\r\n  /*getDatePickerWidth():string{\r\n    return '80%';\r\n  };*/\r\n\r\n  /*\r\n    checkSiCreateurPage(): boolean {\r\n      this.evenementService.checkSiCreateurPageEvenement(this.detail.evenementId, this.user.utilisateurId).then(\r\n        res => {\r\n          if (!res) {\r\n            console.log(\"page groupe detail redirecto to non dre...\" + res);\r\n            this.redirectToNonDroitAcces();\r\n          }\r\n        });\r\n  \r\n      return true;\r\n    }\r\n  */\r\n  /**initDetail(){\r\n    if(this.detail== null ) this.detail = new EvenementDetail();\r\n  }\r\n\r\n  setDetailId(id:number){\r\n    if(id<=0) this.detail.evenementId =null;\r\n    else this.detail.evenementId =id;\r\n  };*/\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n  /*\r\n    siFile():boolean{\r\n      return true;\r\n    }\r\n    addNewFileInfoToObject(){\r\n      for(let i=0;i<this.fileNouveauList.length;i++){\r\n        this.detail.fileList.push(this.fileNouveauList[i]);\r\n      }\r\n    }*/\r\n\r\n\r\n\r\n\r\n\r\n\r\n  /*\r\n    convertDetailDate() {\r\n      if (this.detail != null) {\r\n        if (this.detail.evenementDate != null) this.detail.evenementDate2 = this.utilsService.convertDate(this.detail.evenementDate);\r\n  \r\n  \r\n      }\r\n    }*/\r\n\r\n  /*\r\n    changeEvenementLieu() {\r\n      if (this.detail.evenementLieuLibelle != null && this.detail.evenementLieuLibelle.length > 0) {\r\n        for (let i = 0; i < this.lieuList.length; i++) {\r\n          if (this.detail.evenementLieuLibelle == this.lieuList[i].lieuLibelle) {\r\n            this.detail.evenementLieuId = this.lieuList[i].lieuId;\r\n            return;\r\n          }\r\n        }\r\n      }\r\n      this.detail.evenementLieuId = null;\r\n    }\r\n  \r\n    changeEvenementType() {\r\n      if (this.detail.evenementTypeLibelle != null && this.detail.evenementTypeLibelle.length > 0) {\r\n        for (let i = 0; i < this.typeEvenementList.length; i++) {\r\n          if (this.detail.evenementTypeLibelle == this.typeEvenementList[i].libelle) {\r\n            this.detail.evenementTypeId = this.typeEvenementList[i].id;\r\n            return;\r\n          }\r\n        }\r\n      }\r\n      this.detail.evenementTypeId = null;\r\n    }\r\n  \r\n    changeSubdivision() {\r\n      if (this.detail.adresse != null && this.detail.adresse.length > 0) {\r\n        for (let i = 0; i < this.subdivisionList.length; i++) {\r\n          if (this.detail.adresse == this.subdivisionList[i].libelle) {\r\n            this.detail.subdivisionId = this.subdivisionList[i].id;\r\n            return;\r\n          }\r\n        }\r\n      }\r\n      this.detail.subdivisionId = null;\r\n    }*/\r\n  /** onDateChanged(event: IMyDateModel, nomDate:string) {\r\n     let str=event.formatted;\r\n     if(str!=null && str.length==0) str=null;\r\n     //console.log(\"----change date:\"+nomDate+\"__\"+str);\r\n     if(nomDate=='EVENEMENT') this.detail.evenementDate = str;\r\n    \r\n   }\r\n \r\n    onDateChanged(event: IMyDateModel,champs:string) {\r\n     let str= event.date.year+'-'+event.date.month+'-'+event.date.day;\r\n     if(champs=='EVENEMENT'){\r\n       if(str==\"0-0-0\"){\r\n         this.detail.evenementDate = null;\r\n       } else {this.detail.evenementDate = str;}\r\n     }\r\n   }*/\r\n\r\n  addArtisteEvenement() {\r\n    let p = new ArtisteEvenement();\r\n    p.evenementArtisteGroupeId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      p.siValide = true;\r\n    } else {\r\n      p.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    p.siChange = false;\r\n    p.siDelete = false;\r\n    p.personneList = [];\r\n    this.detail.artisteListEvenement.push(p);\r\n  }\r\n  /*\r\n    changeArtisteEvenementList(artisteEvenement: ArtisteEvenement) {\r\n  \r\n      console.log(\"test peronne add auteur nom:\" + artisteEvenement.personneLibelle);\r\n      artisteEvenement.siArtisteEvenementInconnu = false;\r\n      if (artisteEvenement.personneLibelle != null && artisteEvenement.personneLibelle.trim().length > 0) this.personneService.getPersonneListByNom(artisteEvenement.personneLibelle).then(res => {\r\n        artisteEvenement.personneList = res;\r\n        console.log(\"tes tpersone liste taille retour:\" + res.length);\r\n        for (let i = 0; i < artisteEvenement.personneList.length; i++) {\r\n          console.log(artisteEvenement.personneList[i].id + \"__\" + artisteEvenement.personneList[i].libelle\r\n          )\r\n        }\r\n        if (res.length == 1 && artisteEvenement.personneLibelle == res[0].libelle) { artisteEvenement.personneId = res[0].id }\r\n        else if (res.length == 0) { artisteEvenement.siArtisteEvenementInconnu = true; }\r\n      });\r\n      else artisteEvenement.personneId = null;\r\n  \r\n    }\r\n  \r\n    changeArtisteEvenement(unit: ArtisteEvenement) {\r\n      if (unit.personneLibelle != null && unit.personneLibelle.length > 0) {\r\n        for (let i = 0; i < unit.personneList.length; i++) {\r\n          //console.log(\"test correspondance :\"+unit.personneLibelle + \"__\"+unit.personneList[i].libelle);\r\n          if (unit.personneLibelle == unit.personneList[i].libelle) {\r\n            unit.personneId = unit.personneList[i].id;\r\n            unit.siArtisteEvenementInconnu = false;\r\n            return;\r\n          }\r\n        }\r\n        unit.evenementArtisteGroupeId = null;\r\n        unit.siArtisteEvenementInconnu = true;\r\n      } else {\r\n        unit.siArtisteEvenementInconnu = false;\r\n      }\r\n      unit.evenementArtisteGroupeId = null;\r\n    }*/\r\n\r\n  addGroupeEvenement() {\r\n    let p = new GroupeEvenement();\r\n    p.evenementArtisteGroupeId = this.idTmp;\r\n\r\n    this.idTmp--;\r\n    if (this.siValidationPageMode) {\r\n      p.siValide = true;\r\n    } else {\r\n      p.siValide = false;\r\n    }\r\n    p.siChange = false;\r\n    p.siDelete = false;\r\n    p.groupeList = [];\r\n    this.detail.groupeListEvenement.push(p);\r\n  }\r\n  /*\r\n    changeGroupeEvenementList(groupeEvenement: GroupeEvenement) {\r\n      console.log(\"test peronne add groupe nom:\" + groupeEvenement.groupeLibelle);\r\n      groupeEvenement.siGroupeEvenementInconnu = false;\r\n      if (groupeEvenement.groupeLibelle != null && groupeEvenement.groupeLibelle.trim().length > 0) this.groupeService.getGroupeSimpleByNom(groupeEvenement.groupeLibelle).then(res => {\r\n        groupeEvenement.groupeList = res;\r\n        console.log(\"tes tpersone liste taille retour:\" + res.length);\r\n        for (let i = 0; i < groupeEvenement.groupeList.length; i++) {\r\n          console.log(groupeEvenement.groupeList[i].id + \"__\" + groupeEvenement.groupeList[i].libelle\r\n          )\r\n        }\r\n        if (res.length == 1 && groupeEvenement.groupeLibelle == res[0].libelle) { groupeEvenement.groupeId = res[0].id }\r\n        else if (res.length == 0) { groupeEvenement.siGroupeEvenementInconnu = true; }\r\n      });\r\n      else groupeEvenement.groupeId = null;\r\n    }\r\n  \r\n    changeGroupeEvenement(unit: GroupeEvenement) {\r\n      if (unit.groupeLibelle != null && unit.groupeLibelle.length > 0) {\r\n        for (let i = 0; i < unit.groupeList.length; i++) {\r\n          //console.log(\"test correspondance :\"+unit.personneLibelle + \"__\"+unit.personneList[i].libelle);\r\n          if (unit.groupeLibelle == unit.groupeList[i].libelle) {\r\n            unit.groupeId = unit.groupeList[i].id;\r\n            unit.siGroupeEvenementInconnu = false;\r\n            return;\r\n          }\r\n        }\r\n        unit.evenementArtisteGroupeId = null;\r\n        unit.siGroupeEvenementInconnu = true;\r\n      } else {\r\n        unit.siGroupeEvenementInconnu = false;\r\n      }\r\n      unit.evenementArtisteGroupeId = null;\r\n    }*/\r\n\r\n  /************* validation ******************************************/\r\n  /*\r\n  changeValidAll() {\r\n    this.detail.siEvenementAllValid = this.detail.siEvenementAllValid;\r\n    this.detail.siNomEvenementValid = this.detail.siEvenementAllValid;\r\n    this.detail.siLieuEvenementIdValid = this.detail.siEvenementAllValid;\r\n    this.detail.siDescriptionValid = this.detail.siEvenementAllValid;\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siEvenementAllValid;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siEvenementAllValid;\r\n\r\n\r\n    //this.changeFileValidAll(true);\r\n    //this.changeFileValidAll(false);\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n  }\r\n\r\n\r\n  changeAllUnitValid() {\r\n    this.siAllValid = null;\r\n    if (!this.detail.siNomEvenementValid) {\r\n      this.detail.siEvenementAllValid = false;\r\n      return;\r\n    }\r\n\r\n    if (!this.detail.siLieuEvenementIdValid) {\r\n      this.detail.siEvenementAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDescriptionValid) {\r\n      this.detail.siEvenementAllValid = false;\r\n      return;\r\n    }\r\n    \r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siEvenementAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siEvenementAllValid = false;\r\n      return;\r\n    }\r\n\r\n    this.detail.siEvenementAllValid = true;\r\n  }\r\n  /*\r\n    changeFileValidAll(siPresent: boolean) {\r\n      super.changeFileValidAll(siPresent);\r\n      this.changeAllUnitValid();\r\n    }\r\n    changeFileValidUnit(siPresent: boolean) {\r\n      super.changeFileValidUnit(siPresent);\r\n      this.changeAllUnitValid();\r\n    }\r\n  */\r\n\r\n  changeValidAll() {\r\n    this.detail.siDateValide = this.detail.siEvenementAllValide;\r\n    this.detail.siDateFinValide = this.detail.siEvenementAllValide;\r\n    this.detail.siNomValide = this.detail.siEvenementAllValide;\r\n    this.detail.siLieuIdValide = this.detail.siEvenementAllValide;\r\n    this.detail.siDescriptionValide = this.detail.siEvenementAllValide;\r\n    this.detail.siTypeEvenementIdValide = this.detail.siEvenementAllValide;\r\n    this.detail.siSubdivisionIdValide = this.detail.siEvenementAllValide;\r\n    this.detail.siAdresseIdValide = this.detail.siEvenementAllValide;\r\n    this.detail.siArtisteAllValide = this.detail.siEvenementAllValide;\r\n    this.detail.siGroupeAllValide = this.detail.siEvenementAllValide;\r\n    //this.detail.siFileAllValide = this.detail.siEvenementAllValide;\r\n\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siEvenementAllValide;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siEvenementAllValide;\r\n\r\n    this.changeAuteurRelationAllValid();\r\n    this.changeGroupeRelationAllValid();\r\n\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n\r\n  }\r\n  changeAllUnitValid() {\r\n    this.siAllValid = false;\r\n    if (!this.detail.siDateValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siDateFinValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siNomValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siLieuIdValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siDescriptionValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siTypeEvenementIdValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siSubdivisionIdValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siAdresseIdValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siArtisteAllValide) { this.detail.siEvenementAllValide = false; return; }\r\n    if (!this.detail.siGroupeAllValide) { this.detail.siEvenementAllValide = false; return; }\r\n    //if (!this.detail.siFileAllValide) { this.detail.siEvenementAllValide = false; return; }\r\n \r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siEvenementAllValide = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siEvenementAllValide = false;\r\n      return;\r\n    }\r\n    this.detail.siEvenementAllValide = true;\r\n  }\r\n  changeAuteurRelationAllValid() {\r\n    for (let i = 0; i < this.detail.artisteListEvenement.length; i++) {\r\n      if(!this.detail.artisteListEvenement[i].siDelete){\r\n        this.detail.artisteListEvenement[i].siValide = this.detail.siArtisteAllValide;\r\n        this.detail.artisteListEvenement[i].siChange = true;\r\n      }\r\n      \r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeAuteurRelationUnitValid() {\r\n    for (let i = 0; i < this.detail.artisteListEvenement.length; i++) {\r\n      if (!this.detail.artisteListEvenement[i].siValide&&!this.detail.artisteListEvenement[i].siDelete) {\r\n        this.detail.siArtisteAllValide = false;\r\n        //this.detail.siGroupeAllValid =false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siArtisteAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeGroupeRelationAllValid() {\r\n    for (let i = 0; i < this.detail.groupeListEvenement.length; i++) {\r\n      if(!this.detail.groupeListEvenement[i].siDelete){\r\n      this.detail.groupeListEvenement[i].siValide = this.detail.siGroupeAllValide;\r\n      this.detail.groupeListEvenement[i].siChange = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeGroupeRelationUnitValid() {\r\n    for (let i = 0; i < this.detail.groupeListEvenement.length; i++) {\r\n      if (!this.detail.groupeListEvenement[i].siValide&&!this.detail.groupeListEvenement[i].siDelete) {\r\n        this.detail.siGroupeAllValide = false;\r\n        //this.detail.siGroupeAllValid =false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siGroupeAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/evenement-detail.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractSearchComponent } from './abstract-search.compenent';\r\n\r\nimport { EvenementService } from '../services/evenement-service';\r\n\r\nimport { EvenementList, EvenementSearch } from '../objets/Evenement-search';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n\r\nimport { IMyOptions, IMyDateModel } from 'mydatepicker';\r\nimport { CompleterService, CompleterData } from 'ng2-completer';\r\n\r\n@Component({\r\n\r\n  selector: 'evenement-list',\r\n  templateUrl: '../vue/evenementList.html'\r\n})\r\n\r\n\r\nexport class EvenementListComponent extends AbstractSearchComponent implements OnInit {\r\n  search: EvenementSearch;\r\n  //rows: any[] =[];\r\n  typeEvenementList: ObjSimple[] = [];\r\n  groupeList: ObjSimple[] = [];// à voir si on récupere vraiment la liste des groupes pour la recherche d une personne, il peut y en avoir bcp\r\n  personneList: ObjSimple[] = [];\r\n\r\n  //aucunResultat: boolean = false;\r\n\r\n\r\n  //toto: string;\r\n/*\r\n  private myDatePickerOptions: IMyOptions = {\r\n    dateFormat: 'yyyy-mm-dd',//pour changer les options les mettres ici et rajouter \"[options]=\"myDatePickerOptions\"\r\n  };*/\r\n\r\n  constructor(\r\n    private evenementService: EvenementService,\r\n    protected router: Router,\r\n  ) { super(router) };\r\n\r\n  initPageSearch(): void {\r\n    this.search = new EvenementSearch();\r\n\r\n    this.evenementService.getGroupeList().then(ret => this.groupeList = ret);\r\n    this.evenementService.getTypeEvenementList().then(ret => this.typeEvenementList = ret);\r\n    this.evenementService.getPersonneList().then(ret => this.personneList = ret);\r\n\r\n    this.sorting.column = \"position\";\r\n  }\r\n\r\n\r\n\r\n  onSubmit() {\r\n    super.onSubmit();\r\n    this.rows = [];\r\n    this.evenementService.evenementSearch(this.search.evenementNom, this.search.evenementLieuLibelle, this.search.typeEvenement, this.search.groupeId, this.search.personneId, this.search.dateEvenementIn, this.search.dateEvenementOut).then(ret => {\r\n      this.rows = ret;\r\n      this.traitementResultSearch();\r\n      this.sorting.column = \"position\";\r\n      //this.aucunResultat = (ret == null || ret.length == 0)\r\n    });\r\n  }\r\n  reset(){\r\n    this.search = new EvenementSearch();\r\n    //this.rows = [];\r\n    this.onSubmit();\r\n  }\r\n  goToDetail(evenement: EvenementList, modeRedirect: string) {\r\n    if (evenement.evenementId != null && evenement.evenementId > 0) {\r\n      this.router.navigate(['/evenementDetail', evenement.evenementId + \"-\" + evenement.evenementNom, modeRedirect]);\r\n    }\r\n  }\r\n  toDelete(ele: EvenementList) {\r\n    if (confirm(\"Êtes-vous sûr de supprimer l'événement' : \" + ele.evenementNom)) {\r\n      this.evenementService.deleteEvenement(ele.evenementId).then(siSuccess => {\r\n        if (siSuccess) {\r\n          this.rows.splice(this.rows.indexOf(ele),1);\r\n          //delete[this.rows.indexOf(uti)];\r\n        }\r\n      });\r\n    }\r\n  }\r\n/*\r\n  getResultatIdByRow(row: EvenementList): number {\r\n    return row.evenementId;\r\n  }*/\r\n\r\n  traitementResultSearch() {// les données sont triées dans la requete -> nom, prenom, (puis avec null à la fin) nom du groupe, role, surnom\r\n    //this.rows = <PersonneList[]> JSON.parse(JSON.stringify(this.rows2));\r\n    this.aucunResultat = (this.rows == null || this.rows.length == 0);\r\n\r\n    let idCourant: number = -1;\r\n    //let numStyleCourant=\"0\";\r\n    let nbrMemePersonne: number = 0;\r\n    //let numeroStyle=0;\r\n    for (let i = 0; i < this.rows.length; i++) {\r\n      if (idCourant == this.rows[i].evenementId) {\r\n        this.rows[i].siFirstLigne = false;\r\n        this.rows[i].siVisible = false;\r\n        this.rows[i].siSousLigneAffiche = false;\r\n        nbrMemePersonne++;\r\n        //res[i].numeroStyle = numStyleCourant+nbrMemePersonne%2;\r\n      } else {\r\n        for (let j = 0; j < this.rows.length; j++) {\r\n          if (this.rows[j].evenementId == idCourant) {\r\n            this.rows[j].nbrMemePersonne = nbrMemePersonne;\r\n          }\r\n        }\r\n        nbrMemePersonne = 1;\r\n        this.rows[i].siVisible = true;\r\n        this.rows[i].siFirstLigne = true;\r\n        idCourant = this.rows[i].evenementId;\r\n        this.rows[i].siSousLigneAffiche = false;\r\n        //numStyleCourant = numeroStyle%2+\"\";\r\n        //res[i].numeroStyle=numStyleCourant;\r\n\r\n        //numeroStyle++;\r\n        //this.rows2.push(res[i]);\r\n      }\r\n    }\r\n    for (let j = 0; j < this.rows.length; j++) {\r\n      this.rows[j].position = j;\r\n      if (this.rows[j].evenementId == idCourant) {\r\n        this.rows[j].nbrMemePersonne = nbrMemePersonne;\r\n      }\r\n    }\r\n\r\n  }\r\n\r\n  onChangeVisibiliteSousLigne(id:number,visibilite:boolean){\r\n    //let visibilite:boolean = !per.siVisible;\r\n    for(let i=0;i<this.rows.length;i++){\r\n      if(this.rows[i].evenementId==id){\r\n        this.rows[i].siVisible=visibilite;\r\n        this.rows[i].siSousLigneAffiche=visibilite;\r\n      } \r\n    }\r\n  }\r\n/*\r\n  onDateChanged(event: IMyDateModel, champs: string) {\r\n    let str = event.date.year + '-' + event.date.month + '-' + event.date.day;\r\n    if (champs == 'IN') {\r\n      if (str == \"0-0-0\") {\r\n        this.search.dateEvenementIn = null;\r\n      } else this.search.dateEvenementIn = new Date(str);\r\n    } else if (champs == 'OUT') {\r\n      if (str == \"0-0-0\") {\r\n        this.search.dateEvenementOut = null;\r\n      } else this.search.dateEvenementOut = new Date(str);\r\n    }\r\n  }*/\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/evenementList.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\n\r\nimport { GroupeService } from '../services/groupe-service';\r\nimport { Utils } from '../services/utils.service';\r\nimport { GeneralService } from '../services/general-service';\r\nimport { PersonneService } from '../services/personnne-service';\r\nimport { ProductionService } from '../services/production-service';\r\nimport { FileService } from '../services/file-service';\r\nimport { LieuService } from '../services/lieu-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Groupe, AbstractGroupeInfo, AuteurGroupe, AuteurGroupeRole, PeriodeActivite, Variante,GenreList } from '../objets/Groupe';\r\nimport { Lieu } from '../objets/Lieu';\r\nimport { LieuOSM } from '../objets/LieuOSM';\r\n\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\n\r\nimport { IMyOptions, IMyDateModel } from 'mydatepicker';\r\n\r\nimport { IDetail } from './IDetail.component';\r\n\r\n\r\n@Component({\r\n\r\n  selector: 'groupes',\r\n  templateUrl: '../vue/groupe-detail.component.html'\r\n})\r\n\r\n\r\nexport class GroupeDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n\r\n  detail: Groupe;\r\n\r\n  //statutGroupeList: ObjSimple[] = [];\r\n  //genreList: ObjSimple[] = [];\r\n  //anneeList: number[] = [];\r\n  //lieuList: Lieu[] = [];\r\n  roleList: ObjSimple[] = [];\r\n\r\n  //lieuOrigineList: LieuOSM[] = [];\r\n\r\n  siNomUnique = true;\r\n  groupeNomSimilaireIdList: ObjSimple[] = [];\r\n  //siLieuOrigineInconnu:boolean=false;\r\n  //siGenreInconnu=false;\r\n  siAnneeCreationOk = true;\r\n  siAnneeFinOk = true;\r\n  siAnneeDebAvantFin = false;\r\n\r\n\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected route: ActivatedRoute,\r\n    private groupeService: GroupeService,\r\n    private utilService: Utils,\r\n    private productionService: ProductionService,\r\n    private generalService: GeneralService,\r\n    private personneService: PersonneService,\r\n    protected fileService: FileService,\r\n    private lieuService: LieuService,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n  /*\r\n  getDatePickerWidth(): string {\r\n    return '80%';\r\n  };*/\r\n  /*\r\n  checkSiCreateurPage(): boolean {\r\n    this.groupeService.checkSiCreateurPageGroupe(this.detail.groupeId, this.user.utilisateurId).then(\r\n      res => {\r\n        if (!res) {\r\n          console.log(\"page groupe detail redirecto to non dre...\" + res);\r\n          this.redirectToNonDroitAcces();\r\n        }\r\n      });\r\n    /*\r\n  this.groupeService.checkSiModificateurPageGroupe(this.detail.groupeId,this.user.utilisateurId).then( res => {\r\n    if(!res){\r\n      this.redirectToNonDroitAcces();\r\n    }\r\n    \r\n  });*//*\r\n\r\n    return true;\r\n  }\r\n/*\r\n  getSiValidationPossible(): boolean {\r\n    this.groupeService.checkSiModificateurPageGroupe(this.detail.groupeId, this.user.utilisateurId).then(res => {\r\n      if (!res) {\r\n        this.redirectToNonDroitAcces();\r\n      }\r\n    });\r\n    return null;\r\n  }*/\r\n  /*\r\n  checkSiModificateurPage():Promise<boolean>{\r\n    return this.groupeService.checkSiModificateurPageGroupe(this.detail.groupeId, this.user.utilisateurId);\r\n  }*/\r\n  /*\r\n  checkSiDroitDAcces():boolean{\r\n    if(!super.checkSiDroitDAcces()) return false;\r\n    return false;\r\n  }*/\r\n  /*\r\n    initDetail() {\r\n      if (this.detail == null) this.detail = new Groupe();\r\n    }*/\r\n\r\n  setDetailId(id: number) {\r\n    if (this.detail == null) this.detail = new Groupe();\r\n    if (id <= 0) this.detail.groupeId = null;\r\n    else this.detail.groupeId = id;\r\n  };\r\n\r\n  getDetailObj(): any {\r\n    return this.detail;\r\n  }\r\n  getCreateurId(): number {\r\n    return this.detail.createur.utilisateurId;\r\n  }\r\n\r\n  initById() {\r\n    if (this.detail.groupeId != null) {\r\n      this.groupeService.getGroupeById(this.detail.groupeId, this.user.utilisateurId).then(res => {\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return null;\r\n        }\r\n        this.detail = res;\r\n        this.aftherInitById();\r\n      });\r\n    } else {\r\n      //erreur\r\n    }\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n    /*this.groupeService.getStatusGroupList().then(res => this.statutGroupeList = res);\r\n    this.generalService.getGenreList().then(res => this.genreList = res);\r\n    this.anneeList = this.utilService.getAnneeList();\r\n    this.personneService.getLieuList().then(res => { this.lieuList = res; });*/\r\n    this.personneService.getRoleList().then(res => this.roleList = res);\r\n\r\n  }\r\n\r\n  checkSiFormulaireValide(): boolean {\r\n    //if(this.siGenreInconnu || !this.siAnneeCreationOk || !this.siAnneeFinOk) return false;\r\n    if (!this.siAnneeCreationOk || !this.siAnneeFinOk) return false;\r\n    if (this.detail.anneeCreation != null && this.detail.anneeFin != null && this.detail.anneeCreation > this.detail.anneeFin) return false;\r\n\r\n    if (this.detail.auteurList != null) {\r\n      for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n        if (!this.detail.auteurList[i].siDelete && this.detail.auteurList[i].siAuteurInconnu) return false;\r\n      }\r\n    }\r\n    return true;\r\n  }\r\n\r\n  validationFormulaire(): boolean {\r\n    //if(this.siGenreInconnu || !this.siAnneeCreationOk || !this.siAnneeFinOk || this.siAnneeDebAvantFin) return false;\r\n    if (!this.siAnneeCreationOk || !this.siAnneeFinOk || this.siAnneeDebAvantFin) return false;\r\n    if (this.detail.nom == null || this.detail.nom.trim().length <= 0) return false;\r\n    //if(this.detail.genreId!=null && this.detail.genreId.toString().trim().length<=0) return false;\r\n    //if(this.detail.genreId==null && (this.detail.genreLibelle!=null && this.detail.genreLibelle.trim().length>0)) return false;\r\n\r\n    if (this.detail.anneeCreation != null && this.detail.anneeCreation.toString().length == 0) this.detail.anneeCreation = null;\r\n    if (this.detail.anneeFin != null && this.detail.anneeFin.toString().length == 0) this.detail.anneeFin = null;\r\n    if (this.detail.anneeCreation != null && this.detail.anneeFin != null && this.detail.anneeCreation > this.detail.anneeFin) return false;\r\n\r\n    if (!this.utilService.checkIsAnnee(this.detail.anneeCreation)) return false;\r\n    if (!this.utilService.checkIsAnnee(this.detail.anneeFin)) return false;\r\n    if (this.detail.anneeCreation != null && this.detail.anneeFin != null && this.detail.anneeCreation > this.detail.anneeFin) return false;\r\n\r\n    /*if (this.detail.auteurList != null) {\r\n      for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n        //if ((this.detail.auteurList[i].siAuteurInconnu || this.detail.auteurList[i].typeRoleId==null) && !this.detail.auteurList[i].siDelete ) return false;\r\n        //if (this.detail.auteurList[i].dateDebut != null && this.detail.auteurList[i].dateFin != null && this.detail.auteurList[i].dateDebut > this.detail.auteurList[i].dateFin) return false;\r\n      }\r\n    }*/\r\n\r\n    if (this.detail.periodeActiviteList != null) {\r\n      for (let i = 0; i < this.detail.periodeActiviteList.length; i++) {\r\n        if (!this.detail.periodeActiviteList[i].siDelete) {\r\n          if (this.detail.periodeActiviteList[i].siError) return false;\r\n          if (this.detail.periodeActiviteList[i].dateDebut != null && this.detail.periodeActiviteList[i].dateFin != null && this.detail.periodeActiviteList[i].dateDebut > this.detail.periodeActiviteList[i].dateFin) return false;\r\n\r\n        }\r\n      }\r\n    }\r\n\r\n    if(this.detail.auteurList!=null){\r\n      for(let i=0;i<this.detail.auteurList.length;i++){\r\n        if(!this.detail.auteurList[i].siDelete && this.detail.auteurList[i].personneId>=0){\r\n          for(let j=0;j<this.detail.auteurList[i].roles.length;j++){\r\n            if(!this.detail.auteurList[i].roles[j].siDelete){\r\n              if (this.detail.auteurList[i].roles[j].dateDebut != null && this.detail.auteurList[i].roles[j].dateFin != null && this.detail.auteurList[i].roles[j].dateDebut > this.detail.auteurList[i].roles[j].dateFin) return false;\r\n            }\r\n          }\r\n        }\r\n      }\r\n    }\r\n\r\n    return true;\r\n  }\r\n  /*\r\n    siFile():boolean{\r\n      return true;\r\n    }\r\n    addNewFileInfoToObject(){\r\n      for(let i=0;i<this.fileNouveauList.length;i++){\r\n        this.detail.fileList.push(this.fileNouveauList[i]);\r\n      }\r\n    }*/\r\n\r\n  createOrUpdate() {\r\n    /*\r\n    console.log(\"------------------------------\");\r\n    console.log(\"1:\"+this.detail.lieuOriginId);\r\n    console.log(\"2:\"+this.detail.lieuOriginLibelle);\r\n    if(this.detail.lieuOriginOSM!=null){\r\n      console.log(\"3:\"+this.detail.lieuOriginOSM.osm_id);\r\n      console.log(\"4:\"+this.detail.lieuOriginOSM.display_name);\r\n    }\r\n\r\n\r\n    console.log(\"------------------------------\");\r\n    */\r\n    this.groupeService.createOrUpdateGroupe(this.detail.groupeId, this.detail.nom, /*this.detail.genreId,*/ this.detail.variantes, this.detail.anneeCreation, this.detail.anneeFin, this.detail.lieuOriginId, this.detail.lieuOriginLibelle, this.detail.periodeActiviteList, this.detail.auteurList, this.detail.description, this.detail.fileList, /*this.detail.genreLibelle,*//* this.detail.lieuOriginOSM,*/ this.detail, this.user.utilisateurId).then(ret => {\r\n      this.createOrUpdateResultat(ret);\r\n    });\r\n  }\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.changeAllUnitValid();\r\n    if (this.detail.siGroupeAllValid) {\r\n      this.siAllValid = true;\r\n    }\r\n  }\r\n\r\n  getSiAllValid(): boolean {\r\n    return this.detail.siGroupeAllValid;\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.detail.siGroupeAllValid) {\r\n      this.siAllValid = true;\r\n    }\r\n\r\n    \r\n    this.detail.auteurList.forEach(auteur => {\r\n      let siRoleAllValide:boolean=auteur.siValide;\r\n      auteur.roles.forEach(role => {\r\n        if(!role.siValide) siRoleAllValide =false;\r\n      });\r\n      auteur.siRoleAllValide = siRoleAllValide;\r\n    });\r\n    /*\r\n    if (this.detail != null) {\r\n      if (this.detail.periodeActiviteList != null) {\r\n        for (let i = 0; i < this.detail.periodeActiviteList.length; i++) {\r\n          if (this.detail.periodeActiviteList[i] != null) {\r\n            //if (this.detail.periodeActiviteList[i].dateDebut != null) this.detail.periodeActiviteList[i].dateDebut2 = this.utilService.convertDate(this.detail.periodeActiviteList[i].dateDebut);\r\n           // if (this.detail.periodeActiviteList[i].dateFin != null) this.detail.periodeActiviteList[i].dateFin2 = this.utilService.convertDate(this.detail.periodeActiviteList[i].dateFin);\r\n          }\r\n        }\r\n      }\r\n    }*/\r\n  }\r\n\r\n  checkUniciteNomGroupe() {\r\n    if (this.detail.nom != null && this.detail.nom.length > 0) {\r\n      this.groupeService.checkUniciteNomGroupe(this.detail.nom, this.detail.groupeId).then(ret => {\r\n        this.groupeNomSimilaireIdList = ret;\r\n        //this.siNomUnique =ret\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n  changeRole(role: AuteurGroupeRole) {\r\n    if (role.typeRoleId != null && role.typeRoleId > 0) {\r\n      for (let i = 0; i < this.roleList.length; i++) {\r\n        if (role.typeRoleId == this.roleList[i].id) {\r\n          role.typeRoleLibelle = this.roleList[i].libelle;\r\n          return;\r\n        }\r\n      }\r\n    }\r\n    role.typeRoleLibelle = null;\r\n  }\r\n\r\n  /*\r\n    onDateChangedPeriodeActivie(event: IMyDateModel, periode: PeriodeActivite, siDebut: boolean) {\r\n      let str = event.formatted;\r\n      if (str != null && str.length == 0) str = null;\r\n      if (siDebut) {\r\n        periode.dateDebut = str;\r\n      } else {\r\n        periode.dateFin = str;\r\n      }\r\n      periode.siChange = true;\r\n      if (periode.dateDebut != null && periode.dateFin != null && periode.dateDebut > periode.dateFin) {\r\n        periode.siError = true;\r\n      } else {\r\n        periode.siError = false;\r\n      }\r\n    }\r\n  */\r\n  /*\r\n    changeGenre() {\r\n      if (this.detail.genreLibelle != null && this.detail.genreLibelle.length > 0) {\r\n        for (let i = 0; i < this.genreList.length; i++) {\r\n          if (this.detail.genreLibelle == this.genreList[i].libelle) {\r\n            this.detail.genreId = this.genreList[i].id;\r\n            //this.siGenreInconnu=false;\r\n            return;\r\n          }\r\n        }\r\n        //this.siGenreInconnu=true;\r\n      }/*else{\r\n        this.siGenreInconnu=false;\r\n  }*//*\r\n      this.detail.genreId = null;\r\n    }*/\r\n  /*\r\n    changeStatut() {\r\n      if (this.detail.statutLibelle != null && this.detail.statutLibelle.length > 0) {\r\n        for (let i = 0; i < this.statutGroupeList.length; i++) {\r\n          if (this.detail.statutLibelle == this.statutGroupeList[i].libelle) {\r\n            this.detail.statutId = this.statutGroupeList[i].id;\r\n            //this.siStatutInconnu=false;\r\n            return;\r\n          }\r\n        }\r\n        //  this.siStatutInconnu=true;\r\n      }/*else{\r\n        this.siStatutInconnu=false;\r\n  }*//*\r\n      this.detail.statutId = null;\r\n    }*/\r\n\r\n  addVariante() {\r\n    let v = new Variante();\r\n    v.varianteId = this.idTmp;\r\n    this.idTmp--;\r\n    v.siChange = false;\r\n    v.siDelete = false;\r\n    //if (this.mode == 'VALIDATION') {\r\n    if (this.siValidationPageMode) {\r\n      v.siValide = true;\r\n    } else {\r\n      v.siValide = false;\r\n    }\r\n\r\n    this.detail.variantes.push(v);\r\n  }\r\n  addGenre(){\r\n    let g = new GenreList();\r\n    g.groupeGenreId = this.idTmp;\r\n    this.idTmp--;\r\n    g.siChange = false;\r\n    g.siDelete = false;\r\n\r\n    //if (this.mode == 'VALIDATION') {\r\n    if (this.siValidationPageMode) {\r\n      g.siValide = true;\r\n    } else {\r\n      g.siValide = false;\r\n    }\r\n    this.detail.genreList.push(g);\r\n  }\r\n\r\n  checkAnneeFormat(choix: string) {\r\n    //console.log(\"checkAnneeFormat:\" +this.detail.anneeCreation + \"__\"+this.detail.anneeFin);\r\n    if (choix == 'creation') {\r\n      this.siAnneeCreationOk = this.utilService.checkIsAnnee(this.detail.anneeCreation);\r\n    }\r\n\r\n    if (choix == 'fin') {\r\n      this.siAnneeFinOk = this.utilService.checkIsAnnee(this.detail.anneeFin);\r\n    }\r\n    if (this.siAnneeCreationOk && this.siAnneeFinOk && this.detail.anneeCreation > this.detail.anneeFin && this.detail.anneeCreation != null && this.detail.anneeFin != null && this.detail.anneeCreation.toString().length > 0 && this.detail.anneeFin.toString().length > 0) {\r\n      this.siAnneeDebAvantFin = true;\r\n    } else {\r\n      this.siAnneeDebAvantFin = false;\r\n    }\r\n\r\n  }\r\n  /*\r\n    changeLieuOrigineList() {\r\n      this.lieuService.getLieuByState(this.detail.lieuOriginLibelle).then(ret => {\r\n        this.lieuOrigineList = ret;\r\n  \r\n      });\r\n    }\r\n  \r\n    changeLieuOrigine() {\r\n      console.log(\"icicicici:\" + this.detail.lieuOriginLibelle);\r\n      if (this.detail.lieuOriginLibelle != null && this.detail.lieuOriginLibelle.length > 0) {\r\n        console.log(\"taille list:\" + this.lieuOrigineList.length);\r\n        for (let i = 0; i < this.lieuOrigineList.length; i++) {\r\n          console.log(\"-----\" + this.detail.lieuOriginLibelle + \"__\" + this.getLieuStateNameStr(this.lieuOrigineList[i]));\r\n          if (this.detail.lieuOriginLibelle == this.getLieuStateNameStr(this.lieuOrigineList[i])) {\r\n            //this.detail.lieuOriginOSM = this.lieuOrigineList[i];\r\n            return;\r\n          }\r\n        }\r\n      }\r\n      this.detail.lieuOriginId = null;\r\n    }*/\r\n\r\n  addPeriodeActivite() {\r\n    let p = new PeriodeActivite();\r\n    p.periodeId = this.idTmp;\r\n    this.idTmp--;\r\n    p.siChange = false;\r\n    p.siDelete = false;\r\n    //if (this.mode == 'VALIDATION') {\r\n    if (this.siValidationPageMode) {\r\n      p.siValide = true;\r\n      p.siContexteValide = true;\r\n      p.siDateDebutsiValide = true;\r\n      p.siDateFinsiValide = true;\r\n    } else {\r\n      p.siValide = false;\r\n      p.siContexteValide = false;\r\n      p.siDateDebutsiValide = false;\r\n      p.siDateFinsiValide = false;\r\n    }\r\n\r\n    this.detail.periodeActiviteList.push(p);\r\n  }\r\n\r\n  addAuteur() {\r\n    let p = new AuteurGroupe();\r\n    p.groupeCompositionArtisteId = this.idTmp;\r\n\r\n    this.idTmp--;\r\n    p.siChange = false;\r\n    p.siDelete = false;\r\n\r\n    //if (this.mode == 'VALIDATION') {\r\n    if (this.siValidationPageMode) {\r\n      p.siValide = true;\r\n      p.siPersonneIdValide =true;\r\n    } else {\r\n      p.siValide = false;\r\n      p.siPersonneIdValide =false;\r\n    }\r\n    //this.changeAuteurRelationBlockValid(p);\r\n    this.detail.auteurList.push(p);\r\n  }\r\n  addAuteurRole(auteur: AuteurGroupe) {\r\n    let r = new AuteurGroupeRole();\r\n    r.groupeCompositionArtisteRoleId = this.idTmp;\r\n    this.idTmp--;\r\n    r.siChange = false;\r\n    r.siDelete = false;\r\n    /*r.typeRoleId =null;\r\n    r.typeRoleLibelle=null;*/\r\n    r.siRoleInconnu = false;\r\n\r\n    if (this.siValidationPageMode) {\r\n      r.siValide = true;\r\n      r.siDateDebutValide =true;\r\n      r.siDateFinValide =true;\r\n      r.siTypeRoleIdValide=true;\r\n    } else {\r\n      r.siValide = false;\r\n      r.siDateDebutValide =false;\r\n      r.siDateFinValide =false;\r\n      r.siTypeRoleIdValide=false;\r\n    }\r\n\r\n    if (auteur.roles == null) auteur.roles = [];\r\n    auteur.roles.push(r);\r\n  }\r\n  addAuteurRoleUnit(auteur: AuteurGroupe) {\r\n    if (auteur.roles == null || auteur.roles.length == 0) {\r\n      this.addAuteurRole(auteur);\r\n    }\r\n  }\r\n\r\n  /*\r\n    changeAuteurList(auteur: AuteurGroupe) {\r\n      console.log(\"test peronne add auteur nom:\" + auteur.nom);\r\n      auteur.siAuteurInconnu = false;\r\n      if (auteur.nom != null && auteur.nom.trim().length > 0) this.personneService.getPersonneByConcatNomPrenomRoleSansGroupe(auteur.nom).then(res => {\r\n        auteur.personneList = res;\r\n        console.log(\"tes tpersone liste taille retour:\" + res.length);\r\n        for (let i = 0; i < auteur.personneList.length; i++) {\r\n          console.log(auteur.personneList[i].id + \"__\" + auteur.personneList[i].libelle\r\n          )\r\n        }\r\n        if (res.length == 1 && auteur.nom == res[0].libelle) { auteur.personneId = res[0].id }\r\n        else if (res.length == 0) { auteur.siAuteurInconnu = true; }\r\n      });\r\n      else auteur.personneId = null;\r\n    }\r\n    changeAuteur(unit: AuteurGroupe) {\r\n      if (unit.nom != null && unit.nom.length > 0) {\r\n        for (let i = 0; i < unit.personneList.length; i++) {\r\n          //console.log(\"test correspondance :\"+unit.nom + \"__\"+unit.personneList[i].libelle);\r\n          if (unit.nom == unit.personneList[i].libelle) {\r\n            unit.groupeCompositionArtisteId = unit.personneList[i].id;\r\n            unit.siAuteurInconnu = false;\r\n            return;\r\n          }\r\n        }\r\n        unit.siAuteurInconnu = true;\r\n      } else {\r\n        unit.siAuteurInconnu = false;\r\n      }\r\n      unit.groupeCompositionArtisteId = null;\r\n    }*/\r\n\r\n\r\n  /************* validation ******************************************/\r\n  changeValidAll() {\r\n\r\n    //this.detail.siGroupeAllValid = this.detail.siGroupeAllValid;\r\n    this.detail.siNomValid = this.detail.siGroupeAllValid;\r\n    //this.detail.siGenreIdValid = this.detail.siGroupeAllValid;\r\n    this.detail.siGenreAllValid = this.detail.siGroupeAllValid;\r\n    \r\n    this.detail.siDateCreationValid = this.detail.siGroupeAllValid;\r\n    this.detail.siDateFinValid = this.detail.siGroupeAllValid;\r\n    this.detail.siLieuOrigineIdValid = this.detail.siGroupeAllValid;\r\n    this.detail.siDescriptionValid = this.detail.siGroupeAllValid;\r\n\r\n    this.detail.siVarianteAllValid = this.detail.siGroupeAllValid;\r\n    this.detail.siPeriodeActiviteAllValid = this.detail.siGroupeAllValid;\r\n    this.detail.siAuteurAllValid = this.detail.siGroupeAllValid;\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siGroupeAllValid;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siGroupeAllValid;\r\n\r\n    this.changeVarianteAllValid();\r\n    this.changeGenreAllValid();\r\n    this.changePeriodeActiviteAllValid();\r\n    //this.changeAuteurRelationAllValid();\r\n    this.changeAuteurRelationAllValid();\r\n\r\n    //this.changeFileValidAll(true);\r\n    //this.changeFileValidAll(false);\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n  }\r\n\r\n\r\n  changeAllUnitValid() {\r\n    this.siAllValid = false;\r\n    if (!this.detail.siNomValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    /*if (!this.detail.siGenreIdValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }*/\r\n    if (!this.detail.siGenreAllValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    \r\n    if (!this.detail.siDateCreationValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateFinValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siLieuOrigineIdValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDescriptionValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siVarianteAllValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siPeriodeActiviteAllValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siAuteurAllValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siGroupeAllValid = false;\r\n      return;\r\n    }\r\n\r\n    this.detail.siGroupeAllValid = true;\r\n  }\r\n  /*\r\n    changeFileValidAll(siPresent: boolean) {\r\n      super.changeFileValidAll(siPresent);\r\n      this.changeAllUnitValid();\r\n    }\r\n    changeFileValidUnit(siPresent: boolean) {\r\n      super.changeFileValidUnit(siPresent);\r\n      this.changeAllUnitValid();\r\n    }\r\n  */\r\n\r\n  changeVarianteAllValid() {\r\n    for (let i = 0; i < this.detail.variantes.length; i++) {\r\n      if(!this.detail.variantes[i].siDelete){\r\n        this.detail.variantes[i].siValide = this.detail.siVarianteAllValid;\r\n        this.detail.variantes[i].siChange = true;\r\n        //if(!this.detail.siVarianteAllValid) this.detail.siGroupeAllValid =false;\r\n      }\r\n      \r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeVarianteUnitValid() {\r\n    for (let i = 0; i < this.detail.variantes.length; i++) {\r\n      if (!this.detail.variantes[i].siValide && !this.detail.variantes[i].siDelete) {\r\n        this.detail.siVarianteAllValid = false;\r\n        //this.detail.siGroupeAllValid =false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siVarianteAllValid = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeGenreAllValid() {\r\n    for (let i = 0; i < this.detail.genreList.length; i++) {\r\n      if(!this.detail.genreList[i].siDelete){\r\n      this.detail.genreList[i].siValide = this.detail.siGenreAllValid;\r\n      this.detail.genreList[i].siChange = true;\r\n      //if(!this.detail.siVarianteAllValid) this.detail.siGroupeAllValid =false;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeGenreUnitValid() {\r\n    for (let i = 0; i < this.detail.genreList.length; i++) {\r\n      if (!this.detail.genreList[i].siValide && !this.detail.genreList[i].siDelete) {\r\n        this.detail.siGenreAllValid = false;\r\n        //this.detail.siGroupeAllValid =false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siGenreAllValid = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changePeriodeActiviteAllValid() {\r\n    for (let i = 0; i < this.detail.periodeActiviteList.length; i++) {\r\n      if(!this.detail.periodeActiviteList[i].siDelete){\r\n      this.detail.periodeActiviteList[i].siValide = this.detail.siPeriodeActiviteAllValid;\r\n      this.detail.periodeActiviteList[i].siChange = true;\r\n      this.changePeriodeActiviteBlockValid(this.detail.periodeActiviteList[i]);\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changePeriodeActiviteBlockValid(p: PeriodeActivite) {\r\n    p.siDateDebutsiValide = p.siValide;\r\n    p.siDateFinsiValide = p.siValide;\r\n    p.siContexteValide = p.siValide;\r\n    p.siChange = true;\r\n    this.changePeriodeActiviteUnitValid(p);\r\n  }\r\n  changePeriodeActiviteUnitValid(p: PeriodeActivite) {\r\n    p.siValide = p.siDateDebutsiValide && p.siDateFinsiValide && p.siContexteValide;\r\n    p.siChange = true;\r\n    if (p.siValide != this.detail.siPeriodeActiviteAllValid) {\r\n      if (!p.siValide) {\r\n        this.detail.siPeriodeActiviteAllValid = false;\r\n        this.detail.siGroupeAllValid = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.periodeActiviteList.length; i++) {\r\n          if (!this.detail.periodeActiviteList[i].siValide&&!this.detail.periodeActiviteList[i].siDelete) {\r\n            this.detail.siPeriodeActiviteAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siPeriodeActiviteAllValid = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  /*changeAuteurRelationAllValid() {\r\n    for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n      this.detail.auteurList[i].siValide = this.detail.siAuteurAllValid;\r\n      this.detail.auteurList[i].siChange = true;\r\n      this.changeAuteurRelationBlockValid(this.detail.auteurList[i]);\r\n    }\r\n    this.changeAllUnitValid();\r\n  }*/\r\n\r\n\r\n\r\n  /*changeAuteurRelationBlockValid(p: AuteurGroupe) {\r\n    /*p.siPersonneIdValide = p.siValide;\r\n    p.siChange = true;\r\n    p.roles.forEach(element => {\r\n      element.siValide = p.siValide;\r\n      element.siChange =true;\r\n      this.changeAuteurRelationBlockRoleValid(p,element);\r\n    });*/\r\n\r\n    /*p.siDateDebutValide = p.siValide;\r\n    p.siDateFinValide = p.siValide;\r\n    p.siPersonneIdValide = p.siValide;\r\n    p.siTypeRoleIdValide = p.siValide;\r\n    p.siChange = true;\r\n    this.changeAuteurRelationUnitValid(p);*/\r\n  /*}*/\r\n  /*changeAuteurRelationPersonneValid(a:AuteurGroupe, r: AuteurGroupeRole) {\r\n    \r\n    r.siDateDebutValide = r.siValide;\r\n    r.siDateFinValide = r.siValide;\r\n    r.siTypeRoleIdValide = r.siValide;\r\n\r\n    this.changeAuteurRelationBlockRoleUnitValid(a,r);\r\n  }*/\r\n\r\n\r\n  //TODO finir\r\n  /*changeAuteurRelationAllValid(){\r\n    console.log(\"test:changeAuteurRelationAllValid\");\r\n    for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n      this.detail.auteurList[i].siValide = this.detail.siAuteurAllValid;\r\n      this.detail.auteurList[i].siChange = true;\r\n      \r\n      this.changeAuteurRelationBlockAuteurAllValid(this.detail.auteurList[i]);\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n\r\n  changeAuteurRelationBlockAuteurAllValid(a: AuteurGroupe) {\r\n    console.log(\"test:changeAuteurRelationBlockAuteurAllValid\");\r\n    a.siPersonneIdValide = a.siValide;\r\n    a.siChange = true;\r\n\r\n    a.siRoleAllValide = a.siValide;\r\n\r\n    \r\n    this.changeAuteurRelationBlockRoleAllValide(a);\r\n    //this.changeAuteurRelationBlockAuteurUnitValid(a);\r\n\r\n  }\r\n\r\n  changeAuteurRelationBlockAuteurUnitValid(a: AuteurGroupe) {\r\n    a.siValide = a.siPersonneIdValide && a.siRoleAllValide;\r\n    a.siChange = true;\r\n    \r\n    if(a.siValide != this.detail.siAuteurAllValid){\r\n      if (!a.siValide) {\r\n        this.detail.siAuteurAllValid = false;\r\n        this.detail.siGroupeAllValid = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n          if (!this.detail.auteurList[i].siValide) {\r\n            this.detail.siAuteurAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siAuteurAllValid = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeAuteurRelationBlockRoleAllValide(a: AuteurGroupe){\r\n    for (let i = 0; i < a.roles.length; i++) {\r\n      a.roles[i].siValide = a.siValide;\r\n      a.roles[i].siChange = true;\r\n      this.changeAuteurRelationBlockRoleBlockValid(a.roles[i],a);\r\n    }\r\n  }\r\n\r\n  changeAuteurRelationAuteurPersonne(auteur:AuteurGroupe){\r\n    console.error(\"changeAuteurRelationAuteurPersonne:\"+auteur.siPersonneIdValide +\"__\"+ auteur.siRoleAllValide);\r\n    auteur.siValide = auteur.siPersonneIdValide && auteur.siRoleAllValide;\r\n  }*/\r\n\r\n  changeAuteurRelationAllValid(){\r\n\r\n    this.detail.auteurList.forEach(auteur => {\r\n      if(!auteur.siDelete){\r\n        auteur.siValide = this.detail.siAuteurAllValid;\r\n        auteur.siPersonneIdValide = auteur.siValide;\r\n        auteur.siRoleAllValide = auteur.siValide;\r\n        auteur.roles.forEach(role => {\r\n          if(!role.siDelete){\r\n            role.siValide= auteur.siValide;\r\n            role.siDateDebutValide =auteur.siValide;\r\n            role.siDateFinValide =auteur.siValide;\r\n            role.siTypeRoleIdValide =auteur.siValide;\r\n          }\r\n          \r\n        });\r\n      }\r\n      \r\n    });\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeAuteurRelationRecalculAllValide(auteur:AuteurGroupe){\r\n    \r\n    if(!auteur.siValide){\r\n      this.detail.siAuteurAllValid =false;\r\n      this.changeAllUnitValid();\r\n    }\r\n    else{\r\n      let siAuteurAllValide:boolean=true;\r\n      this.detail.auteurList.forEach(auteur => {\r\n        if(!auteur.siValide&&!auteur.siDelete){\r\n          siAuteurAllValide =false;\r\n          this.detail.siAuteurAllValid = false;\r\n        }\r\n      });\r\n      this.detail.siAuteurAllValid = siAuteurAllValide;\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  \r\n\r\n  changeAuteurRelationBlockAuteurAllValid(auteur:AuteurGroupe){\r\n    auteur.siPersonneIdValide = auteur.siValide;\r\n    auteur.siRoleAllValide = auteur.siValide;\r\n    auteur.roles.forEach(role => {\r\n      if(!role.siDelete){\r\n        role.siValide= auteur.siValide;\r\n        role.siDateDebutValide =auteur.siValide;\r\n        role.siDateFinValide =auteur.siValide;\r\n        role.siTypeRoleIdValide =auteur.siValide;\r\n      }\r\n      \r\n    });\r\n    this.changeAuteurRelationRecalculAllValide(auteur);\r\n  }\r\n  changeAuteurRelationAuteurPersonne(auteur:AuteurGroupe){\r\n    \r\n    auteur.siValide = auteur.siPersonneIdValide && auteur.siRoleAllValide;\r\n    this.changeAuteurRelationRecalculAllValide(auteur);\r\n  }\r\n\r\n  /** dans l'auteur, recalcule si le block de role est valide */\r\n  changeAuteurRelationBlockRolesValid(auteur:AuteurGroupe){\r\n\r\n    let siAllRoleValid:boolean=true;\r\n    auteur.roles.forEach(element => {\r\n      if(!element.siValide&&!element.siDelete){\r\n        siAllRoleValid = false;\r\n      }\r\n    });\r\n    auteur.siRoleAllValide = siAllRoleValid;\r\n    if(auteur.siRoleAllValide&&auteur.siPersonneIdValide){\r\n      auteur.siValide= true;\r\n    }else{\r\n      auteur.siValide=false;\r\n      this.detail.siAuteurAllValid=false;\r\n      \r\n    }\r\n    this.changeAllUnitValid();\r\n    /*\r\n    if(!auteur.siValide) this.detail.siAuteurAllValid =false;\r\n    else{\r\n      let siAuteurAllValide:boolean=true;\r\n      this.detail.auteurList.forEach(auteur => {\r\n        if(!auteur.siValide){\r\n          siAuteurAllValide =false;\r\n        }\r\n      });\r\n      this.detail.siAuteurAllValid = siAuteurAllValide;\r\n    }*/\r\n    this.changeAuteurRelationRecalculAllValide(auteur);\r\n  }\r\n\r\n\r\n  /** dans l'auteur chaque block de role */\r\n  changeAuteurRelationBlockRoleBlockValid(role: AuteurGroupeRole,auteur:AuteurGroupe) {\r\n    role.siTypeRoleIdValide = role.siValide;\r\n    role.siDateDebutValide = role.siValide;\r\n    role.siDateFinValide = role.siValide;\r\n    role.siChange = true;\r\n\r\n    this.changeAuteurRelationBlockRolesValid(auteur);\r\n\r\n    //this.changeAuteurRelationBlockRoleUnitValid(a);\r\n  }\r\n  /** dans l'auteur, dans le role, chaque champs */\r\n  changeAuteurRelationBlockRoleUnitValid(role: AuteurGroupeRole,auteur:AuteurGroupe) {\r\n    role.siValide = role.siTypeRoleIdValide && role.siDateDebutValide && role.siDateFinValide;\r\n    role.siChange = true;\r\n\r\n    this.changeAuteurRelationBlockRolesValid(auteur);\r\n\r\n    //this.changeAuteurRelationBlockAuteurAllValid(auteur);\r\n\r\n    /*if(role.siValide != auteur.siValide){\r\n      if(!role.siValide){\r\n        auteur.siValide = false;\r\n        this.detail.siGroupeAllValid =false;\r\n      }else{\r\n        for(let i=0;i<auteur.roles.length;i++){\r\n          if(!auteur.roles[i].siValide){\r\n            auteur.siValide = false;\r\n            this.changeAuteurRelationBlockRoleAllValide(auteur);\r\n            return;\r\n          }\r\n        }\r\n        auteur.siValide = true;\r\n      }\r\n      this.changeAuteurRelationBlockRoleAllValide(auteur);\r\n    }*/\r\n\r\n    //this.changeAuteurRelationBlockAuteurAllValid()\r\n    \r\n    /*if (a.siValide != this.detail.siAuteurAllValid) {\r\n      if (!a.siValide) {\r\n        this.detail.siAuteurAllValid = false;\r\n        this.detail.siGroupeAllValid = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n          if (!this.detail.auteurList[i].siValide) {\r\n            this.detail.siAuteurAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siAuteurAllValid = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n    */\r\n  }\r\n/*\r\n  changeAuteurRelationPersonneValid(a: AuteurGroupe) {\r\n    console.log(\"test:changeAuteurRelationPersonneValid\");\r\n    console.log(\"test1:\"+this.detail.auteurList[0].siValide);\r\n    if(!a.siPersonneIdValide){\r\n      a.siValide =false;\r\n      a.siChange = true;\r\n      //this.changeAuteurRelationBlockAuteurAllValid(a);\r\n      this.detail.siAuteurAllValid =false;\r\n      console.log(\"test2:\"+this.detail.auteurList[0].siValide);\r\n    }else{\r\n      for(let i=0;i<a.roles.length;i++){\r\n        if(!a.roles[i].siValide){\r\n          a.siValide =false;\r\n          a.siChange = true;\r\n          //this.changeAuteurRelationBlockRoleUnitValid(a,a.roles[i]);\r\n          console.log(\"test3:\"+this.detail.auteurList[0].siValide);\r\n          this.changeAllUnitValid();\r\n          return;\r\n        }\r\n      }\r\n      a.siValide=true;\r\n      a.siChange = true;\r\n      //this.detail.siAuteurAllValid =true;\r\n      console.log(\"test4:\"+this.detail.auteurList[0].siValide);\r\n      this.detail.auteurList.forEach(element => {\r\n        if(!element.siValide){\r\n          element.siValide =false;\r\n          element.siChange = true;\r\n          this.detail.siAuteurAllValid =false;\r\n          console.log(\"test5:\"+this.detail.auteurList[0].siValide);\r\n          this.changeAllUnitValid();\r\n          return;\r\n        }\r\n      });\r\n      this.detail.siAuteurAllValid = true;\r\n      //this.changeAllUnitValid();\r\n      console.log(\"test6:\"+this.detail.auteurList[0].siValide);\r\n    }\r\n    console.log(\"test7:\"+this.detail.auteurList[0].siValide);\r\n    this.changeAllUnitValid();\r\n  }\r\n  \r\n  changeAuteurRelationBlockRoleValid(a: AuteurGroupe, r: AuteurGroupeRole) {\r\n    console.log(\"test:changeAuteurRelationBlockRoleValid\");\r\n    r.siDateDebutValide = r.siValide;\r\n    r.siDateFinValide = r.siValide;\r\n    r.siTypeRoleIdValide = r.siValide;\r\n    r.siChange=true;\r\n    a.siChange=true;\r\n    \r\n\r\n    this.changeAuteurRelationBlockRoleUnitValid(a, r);\r\n  }\r\n\r\n  changeAuteurRelationBlockRoleUnitValid(a: AuteurGroupe, r: AuteurGroupeRole) {\r\n    console.log(\"test:changeAuteurRelationBlockRoleUnitValid\");\r\n    r.siValide = r.siDateDebutValide && r.siDateFinValide && r.siTypeRoleIdValide;\r\n    r.siChange = true;\r\n    a.siChange = true;\r\n\r\n    \r\n\r\n    if (r.siValide != a.siValide) {\r\n      if (!r.siValide) {\r\n        a.siValide = false;\r\n        r.siChange = true;\r\n        a.siChange = true;\r\n\r\n        let siValid:boolean=true;\r\n        this.detail.auteurList.forEach(element => {\r\n          if(!element.siValide) siValid = false;\r\n        });\r\n        this.detail.siAuteurAllValid = siValid;\r\n\r\n        console.log(\"cas0\");\r\n        \r\n        //this.detail.siAuteurAllValid = false;\r\n      } else {\r\n        console.log(\"cas1\");\r\n        a.roles.forEach(element => {\r\n          if (!element.siValide) {\r\n            a.siValide = false;\r\n            r.siChange = true;\r\n            a.siChange = true;\r\n            let siValid:boolean=true;\r\n            this.detail.auteurList.forEach(element => {\r\n              if(!element.siValide) siValid = false;\r\n            });\r\n            this.detail.siAuteurAllValid = siValid;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        });\r\n        if (a.siPersonneIdValide){\r\n          console.log(\"cas2\");\r\n          a.siValide = true;\r\n          let siValid:boolean=true;\r\n          this.detail.auteurList.forEach(element => {\r\n            if(!element.siValide) siValid = false;\r\n          });\r\n          this.detail.siAuteurAllValid = siValid;\r\n          \r\n          r.siChange = true;\r\n          a.siChange = true;\r\n        }\r\n      }\r\n    }else{\r\n      console.log(\"cas3\");\r\n      let siValid:boolean=true;\r\n      this.detail.auteurList.forEach(element => {\r\n        if(!element.siValide) siValid = false;\r\n      });\r\n      this.detail.siAuteurAllValid = siValid;\r\n    }\r\n    console.log(\"cas4\");\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n*/\r\n\r\n  \r\n\r\n  changeAuteurRelationUnitValid(p: AuteurGroupe) {\r\n    /*p.siValide = p.siDateDebutValide && p.siDateFinValide && p.siPersonneIdValide && p.siTypeRoleIdValide;\r\n    p.siChange = true;\r\n    if (p.siValide != this.detail.siAuteurAllValid) {\r\n      if (!p.siValide) {\r\n        this.detail.siAuteurAllValid = false;\r\n        this.detail.siGroupeAllValid = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n          if (!this.detail.auteurList[i].siValide) {\r\n            this.detail.siAuteurAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siAuteurAllValid = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n    */\r\n  }\r\n  /*\r\n    changeAuteurRelationUnitValid() {\r\n      for (let i = 0; i < this.detail.auteurList.length; i++) {\r\n        if (!this.detail.auteurList[i].siValide) {\r\n          this.detail.siAuteurAllValid = false;\r\n          this.changeAllUnitValid();\r\n          return;\r\n        }\r\n      }\r\n      this.detail.siAuteurAllValid = true;\r\n      this.changeAllUnitValid();\r\n    }*/\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/groupe-detail.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractSearchComponent } from './abstract-search.compenent';\r\n\r\n//import { GroupeList } from '../objets/Groupe-search';\r\nimport { GroupeService } from '../services/groupe-service';\r\n\r\n//import { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\n//import { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\n@Component({\r\n  selector: 'groupes-liste',\r\n  templateUrl: '../vue/groupesList.component.html'\r\n})\r\n\r\nexport class GroupesListComponent extends AbstractSearchComponent implements OnInit {\r\n  //groupeList:GroupeSearch[]=[];\r\n  search: number;\r\n\r\n  siDeleteMode: boolean = false;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    private groupeService: GroupeService\r\n  ) { super(router) };\r\n\r\n  initPageSearch(): void {\r\n    this.groupeService.getGroupeListSimple().then(res => this.rows = res);\r\n  }\r\n  goToDetail() {\r\n    super.onSubmit();\r\n    if (this.siDeleteMode) {\r\n      if (this.getSiAdministrateur()) {\r\n        for (let i = 0; i < this.rows.length; i++) {\r\n          if (this.rows[i].groupeId == this.search) {\r\n            if (confirm(\"Êtes-vous sûr de supprimer le groupe : \" + this.rows[i].nom)) {\r\n              this.groupeService.deleteGroupe(this.rows[i].groupeId).then(siSuccess => {\r\n                if (siSuccess) {\r\n                  this.rows.splice(this.rows.indexOf(this.rows[i]),1);\r\n                  //delete[this.rows.indexOf(gr)];\r\n                  //this.initPageSearch();\r\n                }\r\n              });\r\n            }\r\n          }\r\n        }\r\n\r\n      } else {\r\n        this.redirectToNonDroitAcces();\r\n      }\r\n    } else {\r\n      if (this.search != null && this.search > 0) {\r\n        for (let i = 0; i < this.rows.length; i++) {\r\n          if (this.rows[i].groupeId == this.search) {\r\n            this.router.navigate(['/groupeDetail', this.search + \"-\" + this.rows[i].nom, this.getModeRedirectionDetail(this.rows[i])]);\r\n          }\r\n        }\r\n\r\n      }\r\n    }\r\n\r\n  }\r\n  /*getResultatIdByRow(row: GroupeList): number {\r\n    return row.groupeId;\r\n  }*/\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/groupesList.component.ts","import { Component,OnInit } from '@angular/core';\r\nimport { Router }   from '@angular/router';\r\n\r\nimport { AbstractAllComponent } from './abstract-all.component';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\n@Component({\r\n  selector: 'header',\r\n  templateUrl: '../vue/header.component.html',\r\n  styles : ['.userInfo {float: right;color: #FFFFFF;margin-right: 50px;}','.userInfoLink {color: #FFFFFF;}','a.fa.fa-power-off {color: #ffffff;}']\r\n})\r\n\r\nexport class HeaderComponent extends AbstractAllComponent implements OnInit {\r\n\r\n  constructor(\r\n    protected router:Router\r\n  ){super(router,null)};\r\n\r\n  ngOnInit() {\r\n    this.getUserInfo();\r\n  }\r\n  \r\n\r\n  seDeconnecter(){\r\n    localStorage.setItem(\"tokenSession\", null);\r\n    localStorage.setItem(\"userSession\", null);\r\n    this.redirectToLoginPage();\r\n  }\r\n  getAccueilLink(){\r\n    if(this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR || this.utilisateurProfil == UtilisateurProfilEnum.CHERCHEUR){\r\n      this.router.navigate(['/accueil']);\r\n    }else{\r\n      this.router.navigate(['/groupesList']);\r\n    }\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/header.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractSearchComponent } from './abstract-search.compenent';\r\n\r\nimport { ProductionService } from '../services/production-service';\r\n\r\nimport { ObjSimple, sortObjSimpleByLibelle } from '../objets/ObjSimple';\r\n\r\n@Component({\r\n\r\n  selector: 'liste-objets',\r\n  templateUrl: '../vue/liste-objets.component.html'\r\n})\r\n\r\n\r\nexport class ListeObjetsComponent extends AbstractSearchComponent implements OnInit {\r\n  listType = [\r\n    { code: \"GENRE\", libelle: \"Genre\" },\r\n    { code: \"LABEL\", libelle: \"Label\" },\r\n    { code: \"PERSONNE\", libelle: \"Personne\" },\r\n    { code: \"ROLE\", libelle: \"Rôle\" },\r\n    { code: \"STUDIO\", libelle: \"Studio\" },\r\n    { code: \"SUPPORT\", libelle: \"Support\" },\r\n    { code: \"ALBUM_TYPE\", libelle: \"Type d'album\" }\r\n  ];\r\n  selectCode: string;\r\n\r\n  listResult: ObjSimple[] = null;\r\n\r\n  valueAdd: string = null;\r\n\r\n  siValeurDejaExistante: boolean = false;\r\n  siAddElementOk: boolean = false;\r\n  siAddElementKo: boolean = false;\r\n\r\n  valueRegroup: ObjSimple = new ObjSimple();\r\n  //valuesRegroup:ObjSimple[]=null;\r\n  listResultRegroupeA: ObjSimple[] = null;\r\n  listResultRegroupeB: ObjSimple[] = null;\r\n  listResultRegroupeC: ObjSimple[] = null;\r\n  siSelectValueRegroupA: boolean = true;\r\n  siSelectValueRegroupB: boolean = true;\r\n  siSelectValueRegroupC: boolean = true;\r\n  showAddField: boolean = false;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected productionService: ProductionService\r\n  ) { super(router) };\r\n\r\n\r\n  ngOnInit(): void {\r\n    super.ngOnInit();\r\n\r\n  }\r\n\r\n  initPageSearch(): void { }\r\n\r\n  onSubmit() {\r\n    this.listResult = null;\r\n\r\n    this.valueAdd = null;\r\n\r\n    this.siValeurDejaExistante = false;\r\n    this.siAddElementOk = false;\r\n    this.siAddElementKo = false;\r\n\r\n    this.valueRegroup = new ObjSimple();\r\n    this.listResultRegroupeA = null;\r\n    this.listResultRegroupeB = null;\r\n    this.listResultRegroupeC = null;\r\n    this.siSelectValueRegroupA = true;\r\n    this.siSelectValueRegroupB = true;\r\n    this.siSelectValueRegroupC = true;\r\n\r\n    let promise = null;\r\n\r\n    switch (this.selectCode) {\r\n      case \"SUPPORT\":\r\n        promise = this.productionService.getSupportList();\r\n        this.showAddField = true;\r\n        break;\r\n      case \"ROLE\":\r\n        promise = this.productionService.getRoleList();\r\n        this.showAddField = false;\r\n        break;\r\n      case \"LABEL\":\r\n        promise = this.productionService.getLabelList();\r\n        this.showAddField = false;\r\n        break;\r\n      case \"STUDIO\":\r\n        promise = this.productionService.getStudioList();\r\n        this.showAddField = false;\r\n        break;\r\n      case \"GENRE\":\r\n        promise = this.productionService.getGenreList();\r\n        this.showAddField = false;\r\n        break;\r\n      case \"PERSONNE\":\r\n        promise = this.productionService.getPersonneList();\r\n        this.showAddField = false;\r\n        break;\r\n      case \"ALBUM_TYPE\":\r\n        promise = this.productionService.getAlbumTypeList();\r\n        this.showAddField = false;\r\n        break;\r\n    }\r\n\r\n    if(promise) {\r\n      promise.then(resp => {\r\n        this.listResult = resp;\r\n        this.listResultRegroupeA = resp;\r\n        this.listResultRegroupeC = resp;\r\n      });\r\n    }\r\n\r\n  };\r\n\r\n  addElement() {\r\n    this.siValeurDejaExistante = false;\r\n    this.listResult.forEach(element => {\r\n      if (element.libelle == this.valueAdd) {\r\n        this.siValeurDejaExistante = true;\r\n        return;\r\n      }\r\n    });\r\n    if (!this.siValeurDejaExistante) {\r\n      this.productionService.addSupport(this.valueAdd).then(success => {\r\n        if (success) {\r\n          this.valueAdd = null;\r\n          this.siAddElementOk = true;\r\n          this.onSubmit();\r\n        } else {\r\n          this.siAddElementKo = true;\r\n        }\r\n\r\n      });\r\n    }\r\n  }\r\n\r\n  selectValueRegroupe(select: ObjSimple) {\r\n    this.valueRegroup = select;\r\n    this.siSelectValueRegroupA = false;\r\n\r\n    this.calculeRegroupeListB();\r\n    this.calculeRegroupeListC();\r\n  }\r\n  saveRegroupement() {\r\n    if (this.valueRegroup != null && this.listResultRegroupeB != null && this.listResultRegroupeB.length > 0) {\r\n      let lib = \"\";\r\n      let idListRegroup: number[] = [];\r\n      for (let i = 0; i < this.listResultRegroupeB.length; i++) {\r\n        if (i > 0) lib += \", \";\r\n        lib += \"\\\"\" + this.listResultRegroupeB[i].libelle + \"\\\"\";\r\n        idListRegroup.push(this.listResultRegroupeB[i].id);\r\n      }\r\n\r\n\r\n      if (confirm(\"Vous allez regrouper les valeurs : \\\"\" + lib + \" par \\\"\" + this.valueRegroup.libelle + \"\\\", êtes vous sur de vouloir continuer ?\")) {\r\n        let promise = null;\r\n        switch (this.selectCode) {\r\n          case \"SUPPORT\":\r\n            promise = this.productionService.supportRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"ROLE\":\r\n            promise = this.productionService.roleRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"LABEL\":\r\n            promise = this.productionService.labelRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"STUDIO\":\r\n            promise = this.productionService.studioRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"GENRE\":\r\n            promise = this.productionService.genreRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"PERSONNE\":\r\n            promise = this.productionService.personneRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n          case \"ALBUM_TYPE\":\r\n            promise = this.productionService.albumTypeRegroupeList(this.valueRegroup.id, idListRegroup);\r\n            break;\r\n        }\r\n    \r\n        if(promise) {\r\n          promise.then(succes => {\r\n            if (succes) this.onSubmit();\r\n          });\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  addRegroupement(o: ObjSimple) {\r\n    if (this.listResultRegroupeB == null) this.listResultRegroupeB = [];\r\n    this.listResultRegroupeB.push(o);\r\n    sortObjSimpleByLibelle(this.listResultRegroupeB);\r\n    this.calculeRegroupeListC();\r\n  }\r\n  deleteRegroupement(o: ObjSimple) {\r\n    let newList = [];\r\n    this.listResultRegroupeB.forEach(element => {\r\n      if (element.id != o.id) newList.push(element);\r\n    });\r\n    this.listResultRegroupeB = newList;\r\n    this.calculeRegroupeListC();\r\n  }\r\n  calculeRegroupeListB() {\r\n    let newList = [];\r\n    if (this.listResultRegroupeB == null) this.listResultRegroupeB = [];\r\n    this.listResultRegroupeB.forEach(element => {\r\n      if (this.valueRegroup == null || element.id != this.valueRegroup.id) {\r\n\r\n        newList.push(element);\r\n\r\n\r\n      }\r\n    });\r\n    this.listResultRegroupeB = newList;\r\n    sortObjSimpleByLibelle(this.listResultRegroupeB);\r\n  }\r\n  calculeRegroupeListC() {\r\n\r\n\r\n\r\n    this.listResultRegroupeC = [];\r\n\r\n    this.listResult.forEach(element => {\r\n      if (this.valueRegroup == null || element.id != this.valueRegroup.id) {\r\n        let siAjout: boolean = true;\r\n        if (this.listResultRegroupeB != null) {\r\n          this.listResultRegroupeB.forEach(element2 => {\r\n            if (element.id == element2.id) {\r\n              siAjout = false;\r\n            }\r\n          });\r\n        }\r\n        if (siAjout) {\r\n          this.listResultRegroupeC.push(element);\r\n        }\r\n\r\n      }\r\n    });\r\n    sortObjSimpleByLibelle(this.listResultRegroupeC);\r\n  }\r\n\r\n  deleteMessage() {\r\n    this.siAddElementOk = false;\r\n    this.siAddElementKo = false;\r\n    /*this.siValeurDejaExistante = false;*/\r\n  }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/liste-objets.component.ts","\r\nimport { Component,OnInit } from '@angular/core';\r\nimport { Router }   from '@angular/router';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\nimport { Utils } from '../services/utils.service';\r\n\r\nimport { MotDePasseTemporaire } from '../objets/MotDePasseTemporaire';\r\n\r\n@Component({\r\n   selector: 'login-password-temporaire',\r\n  templateUrl: '../vue/login-password-temporaire.html'\r\n})\r\n\r\nexport class LoginPasswordTemporaireComponent implements OnInit{\r\n    mdp:MotDePasseTemporaire={password:null,passwordConfirmation:null};\r\n    siIdentificationIncorrect = false;\r\n    siNewMdpTmpMdpIdentique = false;\r\n    mdpCrypteOld:string=null;\r\n\r\n constructor(\r\n    private utilisateurService : UtilisateurService,\r\n    private utils : Utils,\r\n    private router:Router\r\n  ){};\r\n\r\n\r\n  onSubmit() {\r\n      this.siIdentificationIncorrect=false;\r\n      this.siNewMdpTmpMdpIdentique=false;\r\n\r\n      if(this.mdp.password == this.mdp.passwordConfirmation){\r\n          let passwordCrypte = this.utils.cryptePwd(this.mdp.password);\r\n\r\n          if(passwordCrypte==this.mdpCrypteOld){\r\n            this.siNewMdpTmpMdpIdentique = true;\r\n          }else{\r\n\r\n            this.utilisateurService.updateUtilisateurPassword(JSON.parse(localStorage.getItem(\"userSession\")).utilisateurId,passwordCrypte,false).then(ret => {\r\n              if(ret) {\r\n                let profil = JSON.parse(localStorage.getItem(\"userSession\")).profil;\r\n                if(profil == \"SUPER_ADMINISTRATEUR\" || profil == \"CHERCHEUR\") {\r\n                  this.router.navigate(['/accueil']);\r\n                } else {\r\n                  this.router.navigate(['/groupesList']);\r\n                }\r\n              } else {\r\n                this.siIdentificationIncorrect = true;\r\n              }\r\n            });\r\n          }\r\n\r\n      } else {\r\n          this.siIdentificationIncorrect = true;\r\n      }\r\n  }\r\n  ngOnInit(): void {\r\n    this.utilisateurService.getPasswordUtilisateur(JSON.parse(localStorage.getItem(\"userSession\")).login).then(ret => {this.mdpCrypteOld=ret});\r\n  }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/login-password-temporaire.component.ts","\r\nimport { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\nimport { Login } from '../objets/login';\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\nimport { Utils } from '../services/utils.service';\r\n\r\n\r\n@Component({\r\n\r\n  selector: 'login',\r\n  templateUrl: '../vue/login.component.html'\r\n})\r\n\r\nexport class LoginComponent {\r\n  utiLogin: Login = { login: '', password: '' };\r\n  siIdentificationIncorrect = false;\r\n  siCompteSupprime: boolean = false;\r\n\r\n  constructor(\r\n    private utilisateurService: UtilisateurService,\r\n    private utils: Utils,\r\n    private router: Router\r\n  ) { };\r\n\r\n  onSubmit() {\r\n    this.utilisateurService.checkLoginPassword(this.utiLogin.login, this.utils.cryptePwd(this.utiLogin.password)).then(ret => {\r\n      if (ret != null) {\r\n        if (ret.siDelete) {\r\n          this.siCompteSupprime = true;\r\n        } else {\r\n          ret.timeOutDerniereMouvement = new Date().getTime();\r\n          localStorage.setItem(\"userSession\", JSON.stringify(ret));\r\n          if (ret.siPasswordTmp) {\r\n            this.router.navigate(['/login-password-temporaire']);\r\n          } else {\r\n            if(ret.profil == \"SUPER_ADMINISTRATEUR\" || ret.profil == \"CHERCHEUR\"){\r\n              this.router.navigate(['/accueil']);\r\n            }else{\r\n              this.router.navigate(['/groupesList']);\r\n            }\r\n            \r\n          }\r\n        }\r\n\r\n      } else {\r\n        this.siIdentificationIncorrect = true;\r\n      }\r\n    })\r\n    this.siIdentificationIncorrect = false;\r\n\r\n  }\r\n\r\n  newPwd(): void {\r\n    this.siIdentificationIncorrect = false;\r\n\r\n  }\r\n\r\n  goToAppSansConnexion() {\r\n    this.utilisateurService.getUserSansConnexion().then(ret => {\r\n      if (ret != null) {\r\n          ret.timeOutDerniereMouvement = new Date().getTime();\r\n          localStorage.setItem(\"userSession\", JSON.stringify(ret));\r\n          this.router.navigate(['/groupesList']);\r\n      }\r\n    });\r\n    \r\n  }\r\n  goToInscription(){\r\n    this.router.navigate(['/inscription']);\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/login.component.ts","\r\nimport { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport 'rxjs/add/operator/switchMap';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\nimport { Utils } from '../services/utils.service';\r\n\r\n@Component({\r\n  selector: 'mdp_oublie',\r\n  templateUrl: '../vue/mdp_oublie.component.html'\r\n})\r\n\r\nexport class MdpOublieComponent {\r\n  login: string = null;\r\n  message: string = null;\r\n  siOk: boolean = null;\r\n  siEnvoye: boolean = false;\r\n  siAttente: boolean = false;\r\n  siAuncunUtiByMail: boolean = false;\r\n  nbrSecondeAttente: number = 5;\r\n\r\n  constructor(\r\n    private utilisateurService: UtilisateurService,\r\n    private Utils: Utils,\r\n    private router: Router\r\n  ) { };\r\n\r\n\r\n  onSubmit() {\r\n    this.siAuncunUtiByMail = false;\r\n    this.utilisateurService.resetPassword(this.login).then(result => {\r\n      if(!result.success) {\r\n        this.siOk = false;\r\n        this.message = result.msg || \"Une erreur serveur est survenue. Veuillez réessayer ultérieurement ou contacter un administrateur.\";\r\n      } else {\r\n        this.siOk = true;\r\n        setTimeout(() => this.router.navigate(['/login']), this.nbrSecondeAttente * 1000);\r\n      }\r\n    });\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/mdp-oublie.component.ts","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractAllComponent } from './abstract-all.component';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\n\r\n@Component({\r\n  selector: 'navbar',\r\n  templateUrl: '../vue/navbar.component.html',\r\n  //styles: ['.navbar-nav>li>a:hover {text-decoration: underline;}','.test1: {color:#FFFFFF;}']\r\n  styles: ['div#navbarCollapse.collapse.navbar-collapse{background-color: #000000;}',\r\n              'nav.navbar.navbar-default{margin-bottom: 30px;}',\r\n              '.navbar-nav>li>a:hover {text-decoration: underline;}',\r\n              '.navbar-nav>li>a {color:#FFFFFF;}',\r\n              '.navbar-nav>li>a.navSelect {text-decoration: underline;}']\r\n})\r\n\r\nexport class NavbarComponent extends AbstractAllComponent implements OnInit {\r\n  siAdministrateur: boolean = true;\r\n\r\n  @Input() select: string;\r\n  // : string;\r\n  /*\r\n  @Input('user')\r\n  set user(u:UtilisateurDetail) {\r\n    this.user = u;\r\n    if(this.user==null) this.user = new UtilisateurDetail(null,null,null,null,null,null,null,null,null,null);\r\n  }*/\r\n  constructor(\r\n    protected router: Router\r\n  ) { super(router, null) };\r\n\r\n\r\n  ngOnInit() {\r\n    //this.getUserInfo();\r\n    //console.log(\"user profile :\"+this.utilisateurProfil);\r\n\r\n    /*\r\n    let user = JSON.parse(localStorage.getItem(\"userSession\"));\r\n    console.log(\"test\"+user.utilisateurId+\"__\"+user.nom);\r\n      this. = JSON.parse(localStorage.getItem(\"userSession\")).profil;\r\n      console.log(\"profil\"+ JSON.parse(localStorage.getItem(\"userSession\")).profil);\r\n    } */\r\n    this.getUserInfo();\r\n\r\n  }\r\n\r\n  getSiAdministrateur(): boolean {\r\n    return this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR;\r\n    //return true;\r\n  }\r\n  /*\r\n    seDeconnecter(){\r\n      localStorage.setItem(\"userSession\", null);\r\n      this.redirectToLoginPage();\r\n    }*/\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/navbar.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport 'rxjs/Rx';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\n\r\nimport { PersonneService } from '../services/personnne-service';\r\n//import { GeneralService } from '../services/general-service';\r\nimport { FileService } from '../services/file-service';\r\n//import { Utils } from '../services/utils.service';\r\n//import { GroupeService } from '../services/groupe-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\n//import { IMyOptions, IMyDateModel } from 'mydatepicker';\r\n\r\n\r\nimport { PersonneDetail, PersonneAutreNom, PersonneLieuActivite, PersonneRole } from '../objets/Personne-detail';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n//import { Lieu } from '../objets/Lieu';\r\n//import { FilePind } from '../objets/FilePind';\r\n//import { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nimport { IDetail } from './IDetail.component';\r\n\r\n@Component({\r\n  selector: 'personne',\r\n  templateUrl: '../vue/personne-detail.component.html'\r\n})\r\n\r\n\r\nexport class PersonneDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n  detail: PersonneDetail;\r\n\r\n  //roleLists: ObjSimple[] = [];\r\n  //civiliteList: ObjSimple[] = [];\r\n\r\n  siNomPrenomUnique: boolean = true;\r\n  nomPrenomSimilaireIdList: ObjSimple[] = [];\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected route: ActivatedRoute,\r\n    private personneService: PersonneService,\r\n    //private generalService: GeneralService,\r\n    protected fileService: FileService,\r\n    //private utilsService: Utils,\r\n    //private groupeService: GroupeService,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n  setDetailId(id: number) {\r\n    if (this.detail == null) this.detail = new PersonneDetail();\r\n    if (id <= 0) this.detail.personneId = null;\r\n    else this.detail.personneId = id;\r\n  };\r\n  getDetailObj(): any {\r\n    return this.detail;\r\n  }\r\n  getCreateurId(): number {\r\n    return this.detail.createur.utilisateurId;\r\n  }\r\n  initById() {\r\n    if (this.detail.personneId != null) {\r\n      this.personneService.getPersonneDetail(this.detail.personneId, this.user.utilisateurId).then(res => {\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return;\r\n        }\r\n        this.detail = res;\r\n        this.aftherInitById();\r\n      });\r\n    } else {\r\n      //erreur\r\n    }\r\n  }\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n    //this.personneService.getRoleList().then(ret => this.roleLists = ret);\r\n    //this.personneService.getCiviliteList().then(ret => this.civiliteList = ret);\r\n  }\r\n  checkSiFormulaireValide(): boolean {\r\n    if ((this.detail.nom == null || this.detail.nom.length <= 0 ) && (this.detail.surnom == null || this.detail.surnom.length<=0)){\r\n      return false;\r\n    } \r\n    if (!this.nomPrenomSimilaireIdList != null && this.nomPrenomSimilaireIdList.length > 0) return false;\r\n    for (let i = 0; i < this.detail.autreNomVariante.length; i++) {\r\n      if (this.detail.autreNomVariante[i].siGroupeInconnu && !this.detail.autreNomVariante[i].siDelete) return false;\r\n    }\r\n    for (let i = 0; i < this.detail.autreNomSurnoms.length; i++) {\r\n      if (this.detail.autreNomSurnoms[i].siGroupeInconnu && !this.detail.autreNomSurnoms[i].siDelete) return false;\r\n    }\r\n\r\n\r\n    return true;\r\n  }\r\n\r\n  validationFormulaire(): boolean {\r\n    if ((this.detail.nom == null || this.detail.nom.length <= 0 ) && (this.detail.surnom == null || this.detail.surnom.length<=0)){\r\n      return false;\r\n    } \r\n\r\n    for (let i = 0; i < this.detail.autreNomVariante.length; i++) {\r\n      if (this.detail.autreNomVariante[i].siGroupeInconnu && !this.detail.autreNomVariante[i].siDelete) return false;\r\n    }\r\n    for (let i = 0; i < this.detail.autreNomSurnoms.length; i++) {\r\n      if (this.detail.autreNomSurnoms[i].siGroupeInconnu && !this.detail.autreNomSurnoms[i].siDelete) return false;\r\n    }\r\n\r\n    return true;\r\n  }\r\n  createOrUpdate() {\r\n    this.personneService.createOrUpdatePersonne(this.detail.personneId, this.detail.nom, this.detail.prenom, this.detail.dateNaissance, this.detail.dateNaissanceIncertaineDeb, this.detail.dateNaissanceIncertaineFin, this.detail.lieuNaissanceId, this.detail.dateMort, this.detail.dateMortIncertaineDeb, this.detail.dateMortIncertaineFin, this.detail.lieuMortId, this.detail.biographie, this.detail.civiliteId, this.detail.autreNomVariante, this.detail.autreNomSurnoms, this.detail.roleList, /*this.detail.periodeActivite,*/ this.detail.lieuActivite, this.detail.fileList, this.detail.lieuNaissanceLibelle, this.detail.lieuMortLibelle, this.siValidationPageMode, this.detail.siNomValid, this.detail.siPrenomValid, this.detail.siCiviliteValid, this.detail.siDateNaissancePreciseValid, this.detail, this.user.utilisateurId).then(ret => {\r\n      this.createOrUpdateResultat(ret);\r\n    });\r\n\r\n  }\r\n\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.changeAllUnitValid();\r\n    if (this.detail.siArtisteValidAll) {\r\n      this.siAllValid = true;\r\n    }\r\n  }\r\n\r\n  getSiAllValid(): boolean {\r\n    return this.detail.siArtisteValidAll;\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.detail.siArtisteValidAll) {\r\n      this.siAllValid = true;\r\n    }\r\n\r\n  }\r\n\r\n  checkUniciteNomPrenom() {\r\n    if (this.detail.nom != null && this.detail.nom.length > 0) {\r\n      this.personneService.checkPersonneUniciteNomPersonne(this.detail.nom, this.detail.prenom, this.detail.personneId).then(ret => {\r\n        this.nomPrenomSimilaireIdList = ret;\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n\r\n  addNomVariante() {\r\n    let t = new PersonneAutreNom();\r\n    t.autreNomId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      t.siValide = true;\r\n      t.siContexteValide = true;\r\n      t.siGroupeValide = true;\r\n      t.siNomValide = true;\r\n    } else {\r\n      t.siValide = false;\r\n      t.siContexteValide = false;\r\n      t.siGroupeValide = false;\r\n      t.siNomValide = false;\r\n    }\r\n    this.detail.autreNomVariante.push(t);\r\n    this.idTmp--;\r\n  }\r\n  addSurnom() {\r\n    let t = new PersonneAutreNom();\r\n    t.autreNomId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      t.siValide = true;\r\n      t.siContexteValide = true;\r\n      t.siGroupeValide = true;\r\n      t.siNomValide = true;\r\n    } else {\r\n      t.siValide = false;\r\n      t.siContexteValide = false;\r\n      t.siGroupeValide = false;\r\n      t.siNomValide = false;\r\n    }\r\n    this.detail.autreNomSurnoms.push(t);\r\n    this.idTmp--;\r\n  }\r\n  addRole() {\r\n\r\n\r\n\r\n\r\n    let t = new PersonneRole();\r\n    t.groupeArtisteRoleId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      t.siValide = true;\r\n      t.siDateFinValide = true;\r\n      t.siGroupeIdValide = true;\r\n      t.siTypeRoleIdValide = true;\r\n      t.siDateDebutValide =true;\r\n\r\n    } else {\r\n      t.siValide = false;\r\n      t.siDateFinValide = false;\r\n      t.siGroupeIdValide = false;\r\n      t.siDateDebutValide = false;\r\n      t.siTypeRoleIdValide = false;\r\n    }\r\n    this.detail.roleList.push(t);\r\n    this.idTmp--;\r\n  }\r\n  /*\r\n  addPeriodeActivite() {\r\n    let t = new PersonnePeriodeActivite();\r\n    t.periodeId = this.idTmp;\r\n    \r\n    this.detail.periodeActivite.push(t);\r\n    this.idTmp--;\r\n  }*/\r\n  addLieuActivite() {\r\n    let t = new PersonneLieuActivite();\r\n    t.lieuActiviteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      t.siValide = true;\r\n    } else {\r\n      t.siValide = false;\r\n    }\r\n    this.detail.lieuActivite.push(t);\r\n    this.idTmp--;\r\n  }\r\n\r\n\r\n  changeValidAll() {\r\n\r\n    this.detail.siNomValid = this.detail.siArtisteValidAll;\r\n    this.detail.siPrenomValid = this.detail.siArtisteValidAll;\r\n    this.detail.siSurnomValid = this.detail.siArtisteValidAll;\r\n    this.detail.siCiviliteValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateNaissancePreciseValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateNaissanceIncertaineValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateNaissanceIncertaineDebValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateNaissanceIncertaineFinValid = this.detail.siArtisteValidAll;\r\n    this.detail.siLieuNaissanceValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateMortPreciseValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateMortIncertaineValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateMortIncertaineDebValid = this.detail.siArtisteValidAll;\r\n    this.detail.siDateMortIncertaineFinValid = this.detail.siArtisteValidAll;\r\n    this.detail.siLieuMortValid = this.detail.siArtisteValidAll;\r\n    this.detail.siBiographieValid = this.detail.siArtisteValidAll;\r\n\r\n    this.detail.siVarianteAllValid = this.detail.siArtisteValidAll;\r\n    this.detail.siSurnomAllValid = this.detail.siArtisteValidAll;\r\n    this.detail.siRoleAllValid = this.detail.siArtisteValidAll;\r\n    this.detail.siLieuActiviteAllValid = this.detail.siArtisteValidAll;\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siArtisteValidAll;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siArtisteValidAll;\r\n\r\n    this.changePersonneValidAll(true);\r\n    this.changePersonneValidAll(false);\r\n    this.changeRoleValidAll();\r\n    this.changeLieuActiviteValidAll();\r\n\r\n    //this.changeFileValidAll(true);\r\n    //this.changeFileValidAll(false);\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n  }\r\n\r\n  changeAllUnitValid() {\r\n    this.siAllValid = null;\r\n    if (!this.detail.siNomValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siPrenomValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siSurnomValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siCiviliteValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateNaissancePreciseValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateNaissanceIncertaineValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateNaissanceIncertaineDebValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateNaissanceIncertaineFinValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siLieuNaissanceValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateMortPreciseValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateMortIncertaineValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateMortIncertaineDebValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siDateMortIncertaineFinValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siLieuMortValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siBiographieValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siVarianteAllValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siSurnomAllValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siRoleAllValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siLieuActiviteAllValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siArtisteValidAll = false;\r\n      return;\r\n    }\r\n    this.detail.siArtisteValidAll = true;\r\n  }\r\n\r\n  /* change validation*/\r\n  /****** variante et surnom **********/\r\n  changePersonneValidAll(siVariante: boolean) {\r\n    if (siVariante) {\r\n      for (let i = 0; i < this.detail.autreNomVariante.length; i++) {\r\n        if(!this.detail.autreNomVariante[i].siDelete){\r\n          this.detail.autreNomVariante[i].siValide = this.detail.siVarianteAllValid;\r\n          this.detail.autreNomVariante[i].siChange = true;\r\n          this.changePersonneAutreNomBlockValidAll(this.detail.autreNomVariante[i], siVariante);\r\n        }\r\n        \r\n      }\r\n    } else {\r\n      for (let i = 0; i < this.detail.autreNomSurnoms.length; i++) {\r\n        if(!this.detail.autreNomSurnoms[i].siDelete){\r\n        this.detail.autreNomSurnoms[i].siValide = this.detail.siSurnomAllValid;\r\n        this.detail.autreNomSurnoms[i].siChange = true;\r\n        this.changePersonneAutreNomBlockValidAll(this.detail.autreNomSurnoms[i], siVariante);\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  changePersonneAutreNomBlockValidAll(autreNom: PersonneAutreNom, siVariante: boolean) {\r\n    autreNom.siNomValide = autreNom.siValide;\r\n    autreNom.siGroupeValide = autreNom.siValide;\r\n    autreNom.siContexteValide = autreNom.siValide;\r\n    autreNom.siChange = true;\r\n    this.changePersonneAutreNomValidSingle(autreNom, siVariante);\r\n  }\r\n  changePersonneAutreNomValidSingle(autreNom: PersonneAutreNom, siVariante: boolean) {// soit variante soit surnom\r\n    autreNom.siValide = autreNom.siNomValide && autreNom.siGroupeValide && autreNom.siContexteValide;\r\n    autreNom.siChange = true;\r\n    if (siVariante && autreNom.siValide != this.detail.siVarianteAllValid) {\r\n      if (!autreNom.siValide) {\r\n        this.detail.siVarianteAllValid = false;\r\n        this.detail.siArtisteValidAll = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.autreNomVariante.length; i++) {\r\n          if (!this.detail.autreNomVariante[i].siValide&&!this.detail.autreNomVariante[i].siDelete) {\r\n            this.detail.siVarianteAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siVarianteAllValid = true;\r\n      }\r\n    } else if (!siVariante && autreNom.siValide != this.detail.siSurnomAllValid) {\r\n      if (!autreNom.siValide) {\r\n        this.detail.siSurnomAllValid = false;\r\n        this.detail.siArtisteValidAll = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.autreNomSurnoms.length; i++) {\r\n          if (!this.detail.autreNomSurnoms[i].siValide && !this.detail.autreNomSurnoms[i].siDelete) {\r\n            this.detail.siSurnomAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siSurnomAllValid = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  /***** validation date incertaine */\r\n  changeDateNaissanceMortIncertaineValidAll(siNaissance: boolean) {\r\n    if (siNaissance) {\r\n      this.detail.siDateNaissanceIncertaineDebValid = this.detail.siDateNaissanceIncertaineValid;\r\n      this.detail.siDateNaissanceIncertaineFinValid = this.detail.siDateNaissanceIncertaineValid;\r\n    } else if (!siNaissance) {\r\n      this.detail.siDateMortIncertaineDebValid = this.detail.siDateMortIncertaineValid;\r\n      this.detail.siDateMortIncertaineFinValid = this.detail.siDateMortIncertaineValid;\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeDateNaissanceMortIncertaineValidUnit(siNaissance: boolean) {\r\n    if (siNaissance) {\r\n      this.detail.siDateNaissanceIncertaineValid = this.detail.siDateNaissanceIncertaineDebValid && this.detail.siDateNaissanceIncertaineFinValid;\r\n    } else if (!siNaissance) {\r\n      this.detail.siDateMortIncertaineValid = this.detail.siDateMortIncertaineDebValid && this.detail.siDateMortIncertaineFinValid;\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  /******* role **********/\r\n  changeRoleValidAll() {\r\n    for (let i = 0; i < this.detail.roleList.length; i++) {\r\n      if(!this.detail.roleList[i].siDelete){\r\n        this.detail.roleList[i].siValide = this.detail.siRoleAllValid;\r\n        this.detail.roleList[i].siChange = true;\r\n        this.changeRoleBlockValidAll(this.detail.roleList[i]);\r\n      }\r\n      \r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeRoleBlockValidAll(r: PersonneRole) {\r\n    \r\n    r.siTypeRoleIdValide = r.siValide;\r\n    r.siGroupeIdValide = r.siValide;\r\n    r.siDateDebutValide = r.siValide;\r\n    r.siDateFinValide = r.siValide;\r\n    r.siChange = true;\r\n    this.changeRoleValidUnit(r);\r\n  }\r\n\r\n  changeRoleValidUnit(r: PersonneRole) {// soit variante soit surnom\r\n    r.siValide = r.siTypeRoleIdValide && r.siGroupeIdValide && r.siDateDebutValide && r.siDateFinValide;\r\n    r.siChange = true;\r\n    if (r.siValide != this.detail.siRoleAllValid) {\r\n      if (!r.siValide) {\r\n        this.detail.siRoleAllValid = false;\r\n        this.detail.siArtisteValidAll = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.roleList.length; i++) {\r\n          if (!this.detail.roleList[i].siValide&&!this.detail.roleList[i].siDelete) {\r\n            this.detail.siRoleAllValid = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siRoleAllValid = true;\r\n\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n    \r\n  }\r\n\r\n  /***** validation lieu activite */\r\n  changeLieuActiviteValidAll() {\r\n    for (let i = 0; i < this.detail.lieuActivite.length; i++) {\r\n      if(!this.detail.lieuActivite[i].siDelete){\r\n        this.detail.lieuActivite[i].siValide = this.detail.siLieuActiviteAllValid;\r\n        this.detail.lieuActivite[i].siChange = true;\r\n        //this.changeLieuActiviteValidUnit(this.detail.lieuActivite[i]);\r\n      }\r\n      \r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeLieuActiviteValidUnit() {// soit variante soit surnom\r\n    for (let i = 0; i < this.detail.lieuActivite.length; i++) {\r\n      if (!this.detail.lieuActivite[i].siValide&&!this.detail.lieuActivite[i].siDelete) {\r\n        this.detail.siLieuActiviteAllValid = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siLieuActiviteAllValid = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/personneDetail.component.ts","import { Component,OnInit,SimpleChanges,SimpleChange } from '@angular/core';\r\nimport { Router }   from '@angular/router';\r\n\r\nimport {AbstractSearchComponent} from './abstract-search.compenent';\r\n\r\nimport { PersonneService } from '../services/personnne-service';\r\n\r\nimport { PersonneList,PersonneSearch } from '../objets/Personne-search';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n\r\nimport {IMyOptions, IMyDateModel,MyDatePicker} from 'mydatepicker';\r\nimport { CompleterService, CompleterData } from 'ng2-completer';\r\n\r\n@Component({\r\n    \r\n selector: 'personne',\r\n  templateUrl: '../vue/personneList.component.html'\r\n})\r\n\r\n\r\nexport class PersonneListComponent extends AbstractSearchComponent implements OnInit {\r\n  search:PersonneSearch;\r\n  \r\n  //rows2: any[] =[];\r\n  //roleList:ObjSimple[]=[];\r\n  //groupeList:ObjSimple[]=[];// à voir si on récupere vraiment la liste des groupes pour la recherche d une personne, il peut y en avoir bcp\r\n\r\n  \r\n/*\r\n  private myDatePickerOptions: IMyOptions = {\r\n        dateFormat: 'yyyy-mm-dd',//pour changer les options les mettres ici et rajouter \"[options]=\"myDatePickerOptions\"\r\n    };*/\r\n\r\n  constructor(\r\n    private personneService : PersonneService,\r\n    protected router:Router,\r\n  ){super(router)};\r\n\r\n/*\r\n  onInit(){\r\n    console.log(\"personelist 1\");\r\n    super.ngOnInit();\r\n    console.log(\"personelist 2\");\r\n    let toto = {\"locale\":\"fr\"}\r\n    //MyDatePicker.prototype.ngOnChanges(;\r\n    //C:\\workspace\\testAngular2NodeJs\\node_modules\\mydatepicker\\dist\\services\\my-date-picker.locale.service.js\r\n    //let a  = new SimpleChange('local','fr');\r\n    //MyDatePicker.prototype.ngOnChanges(a);\r\n  }*/\r\n\r\n  initPageSearch(): void {\r\n    this.search = new PersonneSearch();\r\n    //this.personneService.getRoleList().then(ret => this.roleList = ret);\r\n    //this.personneService.getGroupeList().then(ret => this.groupeList = ret);\r\n\r\n    this.sorting.column=\"position\";\r\n    \r\n  } \r\n\r\n  onSubmit(){\r\n    super.onSubmit();\r\n    this.rows = [];\r\n    this.personneService.personneSearch(this.search.nom,this.search.surnom,this.search.typeRole,this.search.groupeId,this.search.dateNaissance,this.search.dateMort).then(ret => {\r\n      this.rows = ret;\r\n      this.traitementResultSearch();\r\n      this.sorting.column=\"position\";\r\n      //this.rows = ret;\r\n      //this.aucunResultat = (ret == null || ret.length==0)\r\n    });\r\n    this.siTriEnCour =false;\r\n    \r\n  }\r\n  reset(){\r\n    this.search = new PersonneSearch();\r\n    //this.rows = [];\r\n    this.onSubmit();\r\n  }\r\n\r\n  goToDetail(personne:PersonneList,modeRedirect:string){\r\n    if(personne.personneId!=null && personne.personneId>0){\r\n      let str = personne.nom + (personne.prenom!=null && personne.prenom.length>0?(\"-\"+personne.prenom):\"\");\r\n      if(personne.nom==null){\r\n        str = personne.nomArtiste;\r\n      }\r\n      this.router.navigate(['/personneDetail', personne.personneId+\"-\"+str,modeRedirect]);\r\n    }\r\n  }\r\n  \r\n  /*getResultatIdByRow(row:PersonneList):number{\r\n    return row.personneId;\r\n  }*/\r\n  toDelete(personne: PersonneList) {\r\n    let str = personne.nom + (personne.prenom!=null && personne.prenom.length>0?(\" \"+personne.prenom):\"\");\r\n    if(personne.nom==null){\r\n      str = personne.nomArtiste;\r\n    }\r\n    if (confirm(\"Êtes-vous sûr de supprimer la personne : \" + str)) {\r\n      this.personneService.deletePersonne(personne.personneId).then(siSuccess => {\r\n        if (siSuccess) {\r\n          this.rows.splice(this.rows.indexOf(personne),1);\r\n          //delete[this.rows.indexOf(uti)];\r\n        }\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n  traitementResultSearch(){// les données sont triées dans la requete -> nom, prenom, (puis avec null à la fin) nom du groupe, role, surnom\r\n    //this.rows = <PersonneList[]> JSON.parse(JSON.stringify(this.rows2));\r\n    this.aucunResultat = (this.rows == null || this.rows.length==0);\r\n    \r\n    /*\r\n    for(let i=0;i<this.rows.length;i++){\r\n      this.rows[i].position=i;\r\n    }*/\r\n\r\n\r\n    /*\r\n    let list :PersonneList[]=[];\r\n    let objCourant:PersonneList=null;\r\n    for(let i=0;i<res.length;i++){\r\n      if(objCourant!=null && res[i].personneId==objCourant.personneId){\r\n        if(objCourant.sousLigne==null) objCourant.sousLigne = [];\r\n        objCourant.sousLigne.push(res[i]);\r\n      }else{\r\n        let tmp = res[i];\r\n        objCourant = tmp;\r\n        list.push(tmp);\r\n      }\r\n    }\r\n    this.rows = list;*/\r\n    \r\n\r\n    let idCourant:number=-1;\r\n    //let numStyleCourant=\"0\";\r\n    let nbrMemePersonne:number=0;\r\n    //let numeroStyle=0;\r\n    for(let i=0;i<this.rows.length;i++){\r\n      if(idCourant == this.rows[i].personneId){\r\n        this.rows[i].siFirstLigne=false;\r\n        this.rows[i].siVisible=false;\r\n        this.rows[i].siSousLigneAffiche=false;\r\n        nbrMemePersonne++;\r\n        //res[i].numeroStyle = numStyleCourant+nbrMemePersonne%2;\r\n      }else{\r\n        for(let j=0;j<this.rows.length;j++){\r\n          if(this.rows[j].personneId==idCourant){\r\n            this.rows[j].nbrMemePersonne=nbrMemePersonne;\r\n          }\r\n        }\r\n        nbrMemePersonne=1;\r\n        this.rows[i].siVisible=true;\r\n        this.rows[i].siFirstLigne=true;\r\n        idCourant = this.rows[i].personneId;\r\n        this.rows[i].siSousLigneAffiche=false;\r\n        //numStyleCourant = numeroStyle%2+\"\";\r\n        //res[i].numeroStyle=numStyleCourant;\r\n        \r\n        //numeroStyle++;\r\n        //this.rows2.push(res[i]);\r\n      }\r\n    }\r\n    for(let j=0;j<this.rows.length;j++){\r\n      this.rows[j].position = j;\r\n      if(this.rows[j].personneId==idCourant){\r\n        this.rows[j].nbrMemePersonne=nbrMemePersonne;\r\n      }\r\n    }\r\n\r\n  }\r\n\r\n\r\n  onChangeVisibiliteSousLigne(id:number,visibilite:boolean){\r\n    //let visibilite:boolean = !per.siVisible;\r\n    for(let i=0;i<this.rows.length;i++){\r\n      if(this.rows[i].personneId==id){\r\n        this.rows[i].siVisible=visibilite;\r\n        this.rows[i].siSousLigneAffiche=visibilite;\r\n      } \r\n    }\r\n  }\r\n\r\n/*\r\n  onChangeVisibiliteSousLigne2(id:number,visibilite:boolean){\r\n    console.log(\"ici\");\r\n    //let tmp:PersonneList[]=[];\r\n    //let visibilite:boolean = !per.siVisible;\r\n    this.rows2=[];\r\n    for(let i=0;i<this.rows.length;i++){\r\n      if(this.rows[i].siFirstLigne || (this.rows[i].personneId==id && visibilite)) this.rows2.push(this.rows[i]);\r\n    }\r\n    console.log(\"taille :\"+this.rows2.length);\r\n  }\r\n*/\r\n/*\r\n  onDateChanged(event: IMyDateModel,champs:string) {\r\n    let str= event.date.year+'-'+event.date.month+'-'+event.date.day;\r\n    \r\n    if(champs=='NAISSANCE'){\r\n      if(str==\"0-0-0\"){\r\n        this.search.dateNaissance = null;\r\n      } else {\r\n        this.search.dateNaissance = str;\r\n      }\r\n    }else if(champs=='MORT'){\r\n      if(str==\"0-0-0\"){\r\n        this.search.dateMort = null;\r\n      } else {\r\n        this.search.dateMort = str;\r\n      }\r\n    }\r\n  }*/\r\n  \r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/personneList.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\nimport { IDetail } from './IDetail.component';\r\n\r\nimport { ProductionService } from '../services/production-service';\r\nimport { Utils } from '../services/utils.service';\r\nimport { FileService } from '../services/file-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { Auteur, Editeur, ProductionAlbum, TableMatiere, DateReedition, Support, tableMatierSort, Groupe, Studio } from '../objets/ProductionAlbum';\r\n\r\n@Component({\r\n  selector: 'production-album',\r\n  templateUrl: '../vue/production-album-detail.component.html'\r\n})\r\n\r\n\r\nexport class ProductionAlbumDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n  detail: ProductionAlbum;\r\n\r\n  nomAlbumSimilaireIdList: ObjSimple[];\r\n\r\n\r\n  siEditeurInconnu: boolean = false;\r\n  siDistributeurInconnu: boolean = false;\r\n  siProducteurInconnu: boolean = false;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected route: ActivatedRoute,\r\n    private utilService: Utils,\r\n    private productionService: ProductionService,\r\n    protected fileService: FileService,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n  setDetailId(id: number) {\r\n    if (this.detail == null) this.detail = new ProductionAlbum();\r\n    if (id <= 0) this.detail.albumId = null;\r\n    else this.detail.albumId = id;\r\n  };\r\n  getDetailObj(): any {\r\n    return this.detail;\r\n  }\r\n\r\n  compare(x, y) {\r\n    return x.numero - y.numero;\r\n  }\r\n\r\n  getCreateurId(): number {\r\n    return this.detail.createur.utilisateurId;\r\n  }\r\n\r\n  initById() {\r\n    this.detail.tableMatiere.sort(this.compare);\r\n    if (this.detail.albumId != null) {\r\n      this.productionService.getProductionAlbumById(this.detail.albumId).then(res => {\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return;\r\n        }\r\n        this.detail = res;\r\n        this.aftherInitById();\r\n      });\r\n    } else {\r\n      //erreur\r\n    }\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n  }\r\n\r\n  /**\r\n   * Correctifs live après les changements de bdd pour passer de 1-1 à n-n\r\n   */\r\n  fixValidationCheckboxes() {\r\n    if(this.detail.ingenieursSon && this.detail.ingenieursSon.length > 0) {\r\n      let allIngenieursValide = true;\r\n      for (let i = 0; i < this.detail.ingenieursSon.length; i++) {\r\n        if(!this.detail.ingenieursSon[i].siValide) {\r\n          allIngenieursValide = false;\r\n          break;\r\n        }\r\n      }\r\n      this.detail.siIngenieursSonIdValide = allIngenieursValide;\r\n    }\r\n    if(this.detail.editeurs && this.detail.editeurs.length > 0) {\r\n      let allEditeursValide = true;\r\n      for (let i = 0; i < this.detail.editeurs.length; i++) {\r\n        if(!this.detail.editeurs[i].siValide) {\r\n          allEditeursValide = false;\r\n          break;\r\n        }\r\n      }\r\n      this.detail.siEditeurIdValide = allEditeursValide;\r\n    }\r\n  }\r\n\r\n  checkSiFormulaireValide(): boolean {\r\n    if (this.detail.auteurs != null) {\r\n      for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n        if (!this.detail.auteurs[i].siDelete && this.detail.auteurs[i].siAuteurInconnu) return false;\r\n      }\r\n    }\r\n    if (this.siDistributeurInconnu || this.siEditeurInconnu || this.siProducteurInconnu) return false;\r\n\r\n\r\n    return true;\r\n  }\r\n  validationFormulaire(): boolean {\r\n    return true;\r\n  }\r\n\r\n  createOrUpdate() {\r\n    this.detail.format = this.utilService.convertDureeStrToSeconde(this.detail.formatStr);\r\n\r\n    this.productionService.updateProductionAlbum(this.detail.albumId, this.detail.typeAlbumId, this.detail.typeAlbumLibelle, this.detail.titre, this.detail.auteurs,\r\n      this.detail.distributeurId, this.detail.distributeurNom, this.detail.producteurId, this.detail.producteurNom,\r\n      this.detail.datePublication, this.detail.format, this.detail.formatStr, this.detail.nbrPiste, this.detail.dedicace,\r\n      this.detail.support, this.detail.datePremiereEdition, this.detail.dateReedition, this.detail.mixageId, this.detail.mixageLibelle,\r\n      this.detail.masteringId, this.detail.masteringLibelle,\r\n      this.detail.tableMatiere, this.detail.categorieId, this.detail.motClef,\r\n      this.detail.couvertureTemporelle, this.detail.genreId, this.detail.fileList, this.user.utilisateurId, this.detail).then(ret => {\r\n        this.createOrUpdateResultat(ret);\r\n      });\r\n  }\r\n\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.changeAllUnitValid();\r\n    if (this.detail.siProductionAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n  }\r\n\r\n  getSiAllValid(): boolean {\r\n    return this.detail.siProductionAllValide;\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.detail.siProductionAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n\r\n    this.detail.formatStr = this.utilService.convertDureeSecondeToStr(this.detail.format);\r\n    tableMatierSort(this.detail.tableMatiere);\r\n    this.fixValidationCheckboxes();\r\n\r\n    this.detail.tableMatiere.sort(this.compare);\r\n  }\r\n\r\n  checkUniciteNomAlbum() {\r\n    if (this.detail.titre != null && this.detail.titre.length > 0) {\r\n      this.productionService.checkUniciteNomAlbum(this.detail.titre, this.detail.albumId).then(ret => {\r\n        this.nomAlbumSimilaireIdList = ret;\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  /************** validation ********************************/\r\n  changeValidAll() {\r\n    this.detail.siProductionAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siTitreValide = this.detail.siProductionAllValide;\r\n    this.detail.siDatePublicationValide = this.detail.siProductionAllValide;\r\n    this.detail.siDureeValide = this.detail.siProductionAllValide;\r\n    this.detail.siMixageIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siMasteringIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siConceptionVisuelleIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siIngenieursSonIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siTypeCategorieIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siTypeGenreIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siDedicaceValide = this.detail.siProductionAllValide;\r\n    this.detail.siNbrPisteValide = this.detail.siProductionAllValide;\r\n    this.detail.siDatePremiereEditionValide = this.detail.siProductionAllValide;\r\n    this.detail.siTypeAlbumIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siEditeurIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siDistributeurIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siProducteurIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siStudioIdValide = this.detail.siProductionAllValide;\r\n    this.detail.siMotClefValide = this.detail.siProductionAllValide;\r\n    this.detail.siMotClefTemporelValide = this.detail.siProductionAllValide;\r\n    this.detail.siAuteurAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siGroupeAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siSupportAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siDateReeditionAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siTableMatiereAllValide = this.detail.siProductionAllValide;\r\n    this.detail.siNbrVenteValide = this.detail.siProductionAllValide;\r\n    this.detail.siNbrTirageValide = this.detail.siProductionAllValide;\r\n    this.detail.siContexteValide = this.detail.siProductionAllValide;\r\n\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siProductionAllValide;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siProductionAllValide;\r\n\r\n    this.changeAuteurAllValid();\r\n    this.changeGroupeAllValid();\r\n    this.changeSupportAllValid();\r\n    this.changeReeditionAllValid();\r\n    this.changeTableMatiereAllValid();\r\n    this.changeConceptionVisuelleAllValid();\r\n    this.changeIngenieursSonAllValid();\r\n    this.changeStudioAllValid();\r\n\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n  }\r\n\r\n  changeAllUnitValid() {\r\n    this.siAllValid = false;\r\n\r\n    if (!this.detail.siTitreValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDatePublicationValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDureeValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siMixageIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siMasteringIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siIngenieursSonIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siTypeCategorieIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siTypeGenreIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDedicaceValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siNbrPisteValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDatePremiereEditionValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siTypeAlbumIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siEditeurIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDistributeurIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siProducteurIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siStudioIdValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siMotClefValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siMotClefTemporelValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siAuteurAllValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siGroupeAllValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siSupportAllValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siDateReeditionAllValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siTableMatiereAllValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siNbrVenteValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siNbrTirageValide) { this.detail.siProductionAllValide = false; return; }\r\n    if (!this.detail.siContexteValide) { this.detail.siProductionAllValide = false; return; }\r\n\r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siProductionAllValide = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siProductionAllValide = false;\r\n      return;\r\n    }\r\n\r\n    this.detail.siProductionAllValide = true;\r\n  }\r\n\r\n  changeAuteurAllValid() {\r\n    for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n      if (!this.detail.auteurs[i].siDelete) {\r\n        this.detail.auteurs[i].siValide = this.detail.siAuteurAllValide;\r\n        this.detail.auteurs[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeAuteurUnitValid() {\r\n    for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n      if (!this.detail.auteurs[i].siValide && !this.detail.auteurs[i].siDelete) {\r\n        this.detail.siAuteurAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siAuteurAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeGroupeAllValid() {\r\n    for (let i = 0; i < this.detail.groupes.length; i++) {\r\n      if (!this.detail.groupes[i].siDelete) {\r\n        this.detail.groupes[i].siValide = this.detail.siGroupeAllValide;\r\n        this.detail.groupes[i].siChange = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeGroupeUnitValid() {\r\n    for (let i = 0; i < this.detail.groupes.length; i++) {\r\n      if (!this.detail.groupes[i].siValide && !this.detail.groupes[i].siDelete) {\r\n        this.detail.siGroupeAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siGroupeAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeSupportAllValid() {\r\n    for (let i = 0; i < this.detail.support.length; i++) {\r\n      if (!this.detail.support[i].siDelete) {\r\n        this.detail.support[i].siValide = this.detail.siSupportAllValide;\r\n        this.detail.support[i].siChange = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeSupportUnitValid() {\r\n    for (let i = 0; i < this.detail.support.length; i++) {\r\n      if (!this.detail.support[i].siValide && !this.detail.support[i].siDelete) {\r\n        this.detail.siSupportAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siSupportAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeReeditionAllValid() {\r\n    for (let i = 0; i < this.detail.dateReedition.length; i++) {\r\n      if (!this.detail.dateReedition[i].siDelete) {\r\n        this.detail.dateReedition[i].siValide = this.detail.siDateReeditionAllValide;\r\n        this.detail.dateReedition[i].siChange = true;\r\n        this.changeReeditionBlockValid(this.detail.dateReedition[i]);\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeReeditionBlockValid(p: DateReedition) {\r\n    p.siCommentaireValide = p.siValide;\r\n    p.siDateValide = p.siValide;\r\n    p.siDistributeurIdValide = p.siValide;\r\n    p.siEditeurValide = p.siValide;\r\n    p.siProducteurValide = p.siValide;\r\n\r\n    p.siChange = true;\r\n    this.changeReeditionUnitValid(p);\r\n  }\r\n  changeReeditionUnitValid(p: DateReedition) {\r\n    p.siValide = p.siCommentaireValide && p.siDateValide && p.siDistributeurIdValide && p.siEditeurValide && p.siProducteurValide;\r\n    p.siChange = true;\r\n    if (p.siValide != this.detail.siDateReeditionAllValide) {\r\n      if (!p.siValide) {\r\n        this.detail.siDateReeditionAllValide = false;\r\n        this.detail.siProductionAllValide = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.dateReedition.length; i++) {\r\n          if (!this.detail.dateReedition[i].siValide && !this.detail.dateReedition[i].siDelete) {\r\n            this.detail.siDateReeditionAllValide = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siDateReeditionAllValide = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n\r\n  changeTableMatiereAllValid() {\r\n    for (let i = 0; i < this.detail.tableMatiere.length; i++) {\r\n      if (!this.detail.tableMatiere[i].siDelete) {\r\n        this.detail.tableMatiere[i].siValide = this.detail.siTableMatiereAllValide;\r\n        this.detail.tableMatiere[i].siChange = true;\r\n        this.changeTableMatiereBlockValid(this.detail.tableMatiere[i]);\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeTableMatiereBlockValid(t: TableMatiere) {\r\n    t.siMorceauAlbumIdValide = t.siValide;\r\n    t.siNumeroValide = t.siValide;\r\n    t.siChange = true;\r\n    this.changeTableMatiereUnitValid(t);\r\n  }\r\n\r\n  changeTableMatiereUnitValid(t: TableMatiere) {\r\n    t.siValide = t.siMorceauAlbumIdValide && t.siNumeroValide;\r\n    t.siChange = true;\r\n    if (t.siValide != this.detail.siTableMatiereAllValide) {\r\n      if (!t.siValide) {\r\n        this.detail.siTableMatiereAllValide = false;\r\n        this.detail.siProductionAllValide = false;\r\n      } else {\r\n        for (let i = 0; i < this.detail.tableMatiere.length; i++) {\r\n          if (!this.detail.tableMatiere[i].siValide && !this.detail.tableMatiere[i].siDelete) {\r\n            this.detail.siTableMatiereAllValide = false;\r\n            this.changeAllUnitValid();\r\n            return;\r\n          }\r\n        }\r\n        this.detail.siTableMatiereAllValide = true;\r\n      }\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeConceptionVisuelleAllValid() {\r\n    for (let i = 0; i < this.detail.conceptionVisuelle.length; i++) {\r\n      if (!this.detail.conceptionVisuelle[i].siDelete) {\r\n        this.detail.conceptionVisuelle[i].siValide = this.detail.siConceptionVisuelleIdValide;\r\n        this.detail.conceptionVisuelle[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n\r\n  }\r\n  changeIngenieursSonAllValid() {\r\n    for (let i = 0; i < this.detail.ingenieursSon.length; i++) {\r\n      if (!this.detail.ingenieursSon[i].siDelete) {\r\n        this.detail.ingenieursSon[i].siValide = this.detail.siIngenieursSonIdValide;\r\n        this.detail.ingenieursSon[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n\r\n  }\r\n\r\n  changeEditeursAllValid() {\r\n    for (let i = 0; i < this.detail.editeurs.length; i++) {\r\n      if (!this.detail.editeurs[i].siDelete) {\r\n        this.detail.editeurs[i].siValide = this.detail.siEditeurIdValide;\r\n        this.detail.editeurs[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n\r\n  }\r\n\r\n  changeConceptionVisuelleUnitValid() {\r\n    for (let i = 0; i < this.detail.conceptionVisuelle.length; i++) {\r\n      if (!this.detail.conceptionVisuelle[i].siValide && !this.detail.conceptionVisuelle[i].siDelete) {\r\n        this.detail.siConceptionVisuelleIdValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siConceptionVisuelleIdValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeIngenieursSonUnitValid() {\r\n    for (let i = 0; i < this.detail.ingenieursSon.length; i++) {\r\n      if (!this.detail.ingenieursSon[i].siValide && !this.detail.ingenieursSon[i].siDelete) {\r\n        this.detail.siIngenieursSonIdValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siIngenieursSonIdValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeEditeursUnitValid() {\r\n    for (let i = 0; i < this.detail.editeurs.length; i++) {\r\n      if (!this.detail.editeurs[i].siValide && !this.detail.editeurs[i].siDelete) {\r\n        this.detail.siEditeurIdValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siEditeurIdValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeStudioAllValid() {\r\n    for (let i = 0; i < this.detail.studio.length; i++) {\r\n      if (!this.detail.studio[i].siDelete) {\r\n        this.detail.studio[i].siValide = this.detail.siStudioIdValide;\r\n        this.detail.studio[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n\r\n  }\r\n\r\n  changeStudioUnitValid() {\r\n    for (let i = 0; i < this.detail.studio.length; i++) {\r\n      if (!this.detail.studio[i].siValide && !this.detail.studio[i].siDelete) {\r\n        this.detail.siStudioIdValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siStudioIdValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n  changeNumeroTableMatiere(t: TableMatiere) {\r\n    t.siChange = true;\r\n    let numTmp: string = t.numero + \"\";\r\n    let numNum = 0;\r\n    if (numTmp.startsWith(\"A\") || numTmp.startsWith(\"B\") || numTmp.startsWith(\"C\") || numTmp.startsWith(\"D\")) {\r\n      numNum = +numTmp.substring(1, numTmp.length);\r\n    }\r\n    if (!Utils.checkIsNumber(numNum)) {\r\n      t.siNumeroNoNumberOrEmpty = true;\r\n      return;\r\n    } else {\r\n      t.siNumeroNoNumberOrEmpty = false;\r\n    }\r\n    for (let i = 0; i < this.detail.tableMatiere.length; i++) {\r\n      if (t.numero == this.detail.tableMatiere[i].numero && t.morceauIdOld != this.detail.tableMatiere[i].morceauIdOld) {\r\n        this.detail.tableMatiere[i].numero = this.getNumeroTableMatiereLast() + \"\";\r\n      }\r\n    }\r\n    //tableMatierSort(this.detail.tableMatiere);\r\n    this.detail.tableMatiere.sort(this.compare);\r\n\r\n  }\r\n\r\n  getNumeroTableMatiereLast(): number {\r\n    let j: number = 0;\r\n    for (let i = 0; i < this.detail.tableMatiere.length; i++) {\r\n      if (!this.detail.tableMatiere[i].siDelete && (+this.detail.tableMatiere[i].numero) > j) {\r\n        j = +this.detail.tableMatiere[i].numero;\r\n      }\r\n    }\r\n    return j + 1;\r\n  }\r\n\r\n  addAuteur() {\r\n    let a = new Auteur();\r\n    a.productionArtisteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.auteurs.push(a);\r\n  }\r\n  addConceptionVisuelle() {\r\n    let a = new Auteur();\r\n    a.productionArtisteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.conceptionVisuelle.push(a);\r\n  }\r\n  addIngenieurSon() {\r\n    let a = new Auteur();\r\n    a.productionArtisteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.ingenieursSon.push(a);\r\n  }\r\n  addEditeur() {\r\n    let a = new Editeur();\r\n    a.productionEntrepriseId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n\r\n    this.detail.editeurs.push(a);\r\n  }\r\n  addStudio() {\r\n    let a = new Studio();\r\n    a.productionStudioId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.studio.push(a);\r\n  }\r\n  addGroupe() {\r\n    if (this.detail.groupes == null) this.detail.groupes = [];\r\n    let a = new Groupe();\r\n    a.productionGroupeId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.groupes.push(a);\r\n  }\r\n  addSupport() {\r\n    let s = new Support();\r\n    s.id = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      s.siValide = true;\r\n\r\n    } else {\r\n      s.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.support.push(s);\r\n  }\r\n  addReedition() {\r\n    let s = new DateReedition();\r\n    s.id = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      s.siValide = true;\r\n      s.siCommentaireValide = true;\r\n      s.siDateValide = true;\r\n      s.siDistributeurIdValide = true;\r\n      s.siEditeurValide = true;\r\n      s.siProducteurValide = true;\r\n    } else {\r\n      s.siValide = false;\r\n      s.siCommentaireValide = false;\r\n      s.siDateValide = false;\r\n      s.siDistributeurIdValide = false;\r\n      s.siEditeurValide = false;\r\n      s.siProducteurValide = false;\r\n    }\r\n    this.idTmp--;\r\n    this.detail.dateReedition.push(s);\r\n  }\r\n  addTableMatiere() {\r\n\r\n    let s = new TableMatiere();\r\n    s.morceauIdOld = this.idTmp;\r\n    s.siNouveau = true;\r\n    if (this.siValidationPageMode) {\r\n      s.siValide = true;\r\n      s.siNumeroValide = true;\r\n      s.siMorceauAlbumIdValide = true;\r\n    } else {\r\n      s.siValide = false;\r\n      s.siNumeroValide = false;\r\n      s.siMorceauAlbumIdValide = false;\r\n    }\r\n    this.idTmp--;\r\n    if (this.detail.tableMatiere.length == 0) s.numero = \"1\";\r\n    else {\r\n      let num = \"1\";\r\n      for (let i = this.detail.tableMatiere.length - 1; i >= 0; i--) {\r\n        if (!this.detail.tableMatiere[i].siDelete && this.detail.tableMatiere[i].numero != null) {\r\n          if (this.detail.tableMatiere[i].numero.toString().startsWith(\"A\") || this.detail.tableMatiere[i].numero.toString().startsWith(\"B\") || this.detail.tableMatiere[i].numero.toString().startsWith(\"C\") || this.detail.tableMatiere[i].numero.toString().startsWith(\"D\")) {\r\n            let numTmp = this.detail.tableMatiere[i].numero.toString().substring(1, this.detail.tableMatiere[i].numero.toString().length) + 1;\r\n            num = this.detail.tableMatiere[i].numero.toString().substring(0, 1) + numTmp;\r\n          } else {\r\n            num = (+this.detail.tableMatiere[i].numero) + 1 + \"\";\r\n          }\r\n\r\n          break;\r\n        }\r\n      }\r\n      s.numero = num;\r\n    }\r\n    this.detail.tableMatiere.push(s);\r\n    this.detail.tableMatiere.sort(this.compare);\r\n  }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/production-album-detail.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\nimport { IDetail } from './IDetail.component';\r\n\r\nimport { ProductionService } from '../services/production-service';\r\nimport { Utils } from '../services/utils.service';\r\nimport { FileService } from '../services/file-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\n\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { ProductionMorceau, AuteurMorceau,GroupeMorceau,CompositeurMorceau } from '../objets/ProductionMorceau';\r\nimport { ProductionList } from '../objets/ProductionSearch';\r\nimport { Album } from '../objets/ProductionAlbum';\r\n\r\n\r\n\r\n@Component({\r\n\r\n  selector: 'production-morceau',\r\n  templateUrl: '../vue/production-morceau-detail.component.html'\r\n})\r\n\r\n\r\nexport class ProductionMorceauDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n  detail: ProductionMorceau;\r\n\r\n\r\n  albumCourant: ProductionList;\r\n  numeroPisteExistant: ObjSimple[];\r\n\r\n  nomMorceauSimilaireIdList: ObjSimple[] = [];\r\n  siAlbumInconnu: boolean = false;\r\n  siCompositeurInconnu: boolean = false;\r\n  siAfficheAllParole: boolean = false;\r\n\r\n  siAnneeCompositionOk: boolean = true;\r\n  siAnneePremierEnregistrementOk: boolean = true;\r\n  siAnneePremierePublicationOk: boolean = true;\r\n  siNumPisteAndNotAlbumId: boolean = false;\r\n  siNumeroPisteDejaUtilisePourAlbum: boolean = false;\r\n  siNumeroPisteSuperieurNbrPisteAlbum: boolean = false;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n    protected route: ActivatedRoute,\r\n    private utilService: Utils,\r\n    private productionService: ProductionService,\r\n    protected fileService: FileService,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n  setDetailId(id: number) {\r\n    if (this.detail == null) this.detail = new ProductionMorceau();\r\n    if (id <= 0) this.detail.morceauId = null;\r\n    else this.detail.morceauId = id;\r\n  };\r\n\r\n  getDetailObj(): any {\r\n    return this.detail;\r\n  }\r\n  getCreateurId(): number {\r\n    return this.detail.createur.utilisateurId;\r\n  }\r\n  initById() {\r\n    if (this.detail.morceauId != null) {\r\n      this.productionService.getMorceauById(this.detail.morceauId).then(res => {\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return;\r\n        }\r\n        this.detail = res;\r\n        this.aftherInitById();\r\n\r\n\r\n      });\r\n    } else {\r\n      //erreur\r\n    }\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n  }\r\n\r\n  /**\r\n   * Correctifs live après les changements de bdd pour passer de 1-1 à n-n\r\n   */\r\n  fixValidationCheckboxes() {\r\n    if(this.detail.compositeurs && this.detail.compositeurs.length > 0) {\r\n      let allValide = true;\r\n      for (let i = 0; i < this.detail.compositeurs.length; i++) {\r\n        if(!this.detail.compositeurs[i].siValide) {\r\n          allValide = false;\r\n          break;\r\n        }\r\n      }\r\n      this.detail.siCompositeurAllValide = allValide;\r\n    }\r\n  }\r\n\r\n  checkSiFormulaireValide(): boolean {\r\n    if (this.detail.titre == null || this.detail.titre.trim().length == 0) return false;\r\n    if (this.siAlbumInconnu) return false;\r\n    if (!this.siAnneeCompositionOk) return false;\r\n    if (!this.siAnneePremierEnregistrementOk) return false;\r\n    if (!this.siAnneePremierePublicationOk) return false;\r\n    if (this.siCompositeurInconnu) return false;\r\n    if (this.siNumeroPisteDejaUtilisePourAlbum || this.siNumeroPisteSuperieurNbrPisteAlbum) return false;\r\n\r\n    if (this.detail.auteurs != null) {\r\n      for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n        if (!this.detail.auteurs[i].siDelete && this.detail.auteurs[i].siAuteurInconnu) return false;\r\n      }\r\n    }\r\n    if (this.detail.compositeurs != null) {\r\n      for (let i = 0; i < this.detail.compositeurs.length; i++) {\r\n        if (!this.detail.compositeurs[i].siDelete && this.detail.compositeurs[i].siCompositeurInconnu) return false;\r\n      }\r\n    }\r\n\r\n    return true;\r\n  }\r\n\r\n  verifAlbums(): boolean{\r\n    let res=false;\r\n    for (let i=0; i<this.detail.albums.length;i++){\r\n      if (this.detail.albums[i].albumId == null && this.detail.albums[i].albumNom != null && this.detail.albums[i].albumNom.length > 0) res=true;\r\n    }\r\n    return res;\r\n  }\r\n\r\n\r\n  validationFormulaire(): boolean {\r\n    if (this.detail.titre == null || this.detail.titre.trim().length == 0) return false;\r\n    if (this.verifAlbums()) return false;\r\n    if (this.siNumeroPisteDejaUtilisePourAlbum || this.siNumeroPisteSuperieurNbrPisteAlbum) this.detail.numeroPisteAlbum = null;\r\n    if (this.detail.numeroPisteAlbum != null && this.detail.numeroPisteAlbum.toString().trim().length == 0) this.detail.numeroPisteAlbum = null;\r\n    if (this.detail.numeroPisteAlbum != null){\r\n      let numTmp:string = this.detail.numeroPisteAlbum+\"\";\r\n      let numNum = 0;\r\n      if(numTmp.startsWith(\"A\") || numTmp.startsWith(\"B\") || numTmp.startsWith(\"C\") || numTmp.startsWith(\"D\")){\r\n        numNum = +numTmp.substring(1,numTmp.length);\r\n      }\r\n      if (!Utils.checkIsNumber(numNum)) {\r\n        this.detail.numeroPisteAlbum=null;\r\n      }\r\n    }\r\n\r\n\r\n    if (this.detail.bpm != null && this.detail.bpm.toString().length == 0) this.detail.bpm = null;\r\n    if (this.detail.numeroPisteAlbum != null && this.detail.numeroPisteAlbum.toString().length == 0) this.detail.numeroPisteAlbum = null;\r\n\r\n    this.detail.format = this.utilService.convertDureeStrToSeconde(this.detail.formatStr);\r\n    if (this.detail.format != null && this.detail.format.toString().length == 0) this.detail.format = null;\r\n\r\n    if (this.detail.bpm != null && !Utils.checkIsNumber(this.detail.bpm)) return false;\r\n\r\n    if (this.detail.auteurs != null) {\r\n      for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n        if (!this.detail.auteurs[i].siDelete && this.detail.auteurs[i].siAuteurInconnu) return false;\r\n      }\r\n    }\r\n    if (this.detail.compositeurs != null) {\r\n      for (let i = 0; i < this.detail.compositeurs.length; i++) {\r\n        if (!this.detail.compositeurs[i].siDelete && this.detail.compositeurs[i].siCompositeurInconnu) return false;\r\n      }\r\n    }\r\n\r\n    return true;\r\n  }\r\n\r\n  createOrUpdate() {\r\n    this.detail.format = this.utilService.convertDureeStrToSeconde(this.detail.formatStr);\r\n\r\n    this.productionService.createOrUpdateProductionMorceau(this.detail.morceauId, this.detail.titre, this.detail.albums || [], this.detail.dateComposition, this.detail.datePremierEnregistrement, this.detail.datePremierePublication, this.detail.format, this.detail.description, this.detail.typeTonaliteId, this.detail.bpm, this.detail.structureMorceau, /*this.detail.organologie,*/this.detail.typeOrganologieId, this.detail.auteurs, this.detail.langueId, this.detail.parole, this.detail.bibliographie, this.detail.notice, this.detail.typeTonnaliteLibelle, this.detail.langueLibelle, this.detail.fileList, this.user.utilisateurId, this.detail).then(ret => {\r\n      this.createOrUpdateResultat(ret);\r\n    });\r\n\r\n  }\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.changeAllUnitValid();\r\n    if (this.detail.siMorceauAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n  }\r\n  getSiAllValid(): boolean {\r\n    return this.detail.siMorceauAllValide;\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.detail.siMorceauAllValide) {\r\n      this.siAllValid = true;\r\n    }\r\n    this.detail.formatStr = this.utilService.convertDureeSecondeToStr(this.detail.format);\r\n    this.fixValidationCheckboxes();\r\n  }\r\n\r\n  checkUniciteNomMorceau() {\r\n    if (this.detail.titre != null && this.detail.titre.length > 0) {\r\n      this.productionService.checkUniciteNomMorceau(this.detail.titre, this.detail.morceauId).then(ret => {\r\n        this.nomMorceauSimilaireIdList = ret;\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n  getParoleCourt(): string {\r\n    if (this.detail.parole == null) return null;\r\n    if (this.detail.parole.length >= 100) return this.detail.parole.substring(0, 99);\r\n    return this.detail.parole;\r\n  }\r\n\r\n  changeNumeroPiste() {\r\n\r\n    for (let i=0; i<this.detail.albums.length; i++){\r\n        this.siNumeroPisteSuperieurNbrPisteAlbum = false;\r\n        this.siNumeroPisteDejaUtilisePourAlbum = false;\r\n        if (this.detail.albums[i].numeroPisteAlbum != null && this.detail.albums[i].numeroPisteAlbum.toString().length == 0) this.detail.albums[i].numeroPisteAlbum = null;\r\n        if (this.detail.albums[i].albumId == null && this.detail.albums[i].numeroPisteAlbum != null) {\r\n          this.siNumPisteAndNotAlbumId = true;\r\n          this.detail.albums[i].numeroPisteAlbum = null;\r\n        } else this.siNumPisteAndNotAlbumId = false;\r\n\r\n        if (this.detail.albums[i].albumId != null && (this.albumCourant == null || this.albumCourant.productionAlbumId != this.detail.albums[i].albumId)) {\r\n          this.productionService.searchProduction('ALBUM', null, this.detail.albums[i].albumNom, null, null, this.detail.albums[i].albumId).then(res => {\r\n            this.albumCourant = res[0];//recherche par l id, donc il existe et est unique.\r\n            this.productionService.getMorceauNumPisteByAlbum(this.detail.albums[i].albumId, this.detail.morceauId).then(res => {\r\n            this.numeroPisteExistant = res;\r\n            this.checkNumeroPiste();\r\n          });\r\n        });\r\n      } else if (this.detail.albums[i].albumId != null) {\r\n        this.checkNumeroPiste();\r\n      }\r\n    }\r\n  }\r\n\r\n  checkNumeroPiste() {\r\n    for (let a=0; a<this.detail.albums.length; a++){\r\n      if (this.albumCourant != null && this.albumCourant.nbrPiste != null && (this.detail.numeroPisteAlbum > this.albumCourant.nbrPiste) && !this.detail.numeroPisteAlbum.toString().startsWith(\"A\")&&!this.detail.numeroPisteAlbum.toString().startsWith(\"B\") && !this.detail.numeroPisteAlbum.toString().startsWith(\"C\") && !this.detail.numeroPisteAlbum.toString().startsWith(\"D\")) {\r\n        this.siNumeroPisteSuperieurNbrPisteAlbum = true;\r\n      }\r\n      if (this.numeroPisteExistant != null) {\r\n        for (let i = 0; i < this.numeroPisteExistant.length; i++) {\r\n          if (this.numeroPisteExistant[i].id == this.detail.albums[a].numeroPisteAlbum && parseInt(this.numeroPisteExistant[i].value) == this.detail.albums[a].albumId) {\r\n            this.siNumeroPisteDejaUtilisePourAlbum = true;\r\n          }\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  addAlbum() {\r\n    let a = new Album();\r\n    this.detail.albums.push(a);\r\n  }\r\n\r\n  addCompositeur() {\r\n    let a = new CompositeurMorceau();\r\n    a.morceauArtisteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    if (this.detail.compositeurs == null) this.detail.compositeurs = [];// peut etre supprimer une fois que j'aurai fait la requete avec la partie auteur (qui peut etre vide, mais non null)\r\n    this.detail.compositeurs.push(a);\r\n  }\r\n  addAuteur() {\r\n    let a = new AuteurMorceau();\r\n    a.morceauArtisteId = this.idTmp;\r\n    if (this.siValidationPageMode) {\r\n      a.siValide = true;\r\n\r\n    } else {\r\n      a.siValide = false;\r\n    }\r\n    this.idTmp--;\r\n    if (this.detail.auteurs == null) this.detail.auteurs = [];// peut etre supprimer une fois que j'aurai fait la requete avec la partie auteur (qui peut etre vide, mais non null)\r\n    this.detail.auteurs.push(a);\r\n  }\r\n  addGroupe(){\r\n    let g = new GroupeMorceau();\r\n    g.morceauGroupeId = this.idTmp;\r\n    this.idTmp--;\r\n    if (this.siValidationPageMode) {\r\n      g.siValide = true;\r\n\r\n    } else {\r\n      g.siValide = false;\r\n    }\r\n    if(this.detail.groupes==null) this.detail.groupes = [];\r\n    this.detail.groupes.push(g);\r\n  }\r\n\r\n  changeValidAll() {\r\n    this.detail.siNomValide = this.detail.siMorceauAllValide;\r\n    this.detail.siDureeValide = this.detail.siMorceauAllValide;\r\n    this.detail.siParoleValide = this.detail.siMorceauAllValide;\r\n    this.detail.siTypeTonaliteIdValide = this.detail.siMorceauAllValide;\r\n    this.detail.siBpmValide = this.detail.siMorceauAllValide;\r\n    this.detail.siStructureValide = this.detail.siMorceauAllValide;\r\n    this.detail.siOrganologieValide = this.detail.siMorceauAllValide;\r\n    this.detail.siLangueIdValide = this.detail.siMorceauAllValide;\r\n    this.detail.siDescriptionValide = this.detail.siMorceauAllValide;\r\n    this.detail.siAlbumIdValide = this.detail.siMorceauAllValide;\r\n    this.detail.siNumeroPisteValide = this.detail.siMorceauAllValide;\r\n    this.detail.siDatePremierePublicationValide = this.detail.siMorceauAllValide;\r\n    this.detail.siDatePremierEnregistrementValide = this.detail.siMorceauAllValide;\r\n    this.detail.siDateCompositionValide = this.detail.siMorceauAllValide;\r\n    this.detail.siAuteurAllValide = this.detail.siMorceauAllValide;\r\n    this.detail.siCompositeurAllValide = this.detail.siMorceauAllValide;\r\n    this.detail.siGroupeAllValide = this.detail.siMorceauAllValide;\r\n\r\n    this.detail.siFilePresentAllValid = this.detail.siMorceauAllValide;\r\n    this.detail.siFileNonPresentAllValid = this.detail.siMorceauAllValide;\r\n\r\n\r\n    this.changeAuteurAllValid();\r\n    this.changeGroupeAllValid();\r\n    this.siRecalculeFileChange = !this.siRecalculeFileChange;\r\n  }\r\n\r\n  changeAllUnitValid() {\r\n    this.siAllValid = false;\r\n    if (!this.detail.siNomValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siDureeValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siParoleValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siTypeTonaliteIdValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siBpmValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siStructureValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siOrganologieValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siLangueIdValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siDescriptionValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siAlbumIdValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siNumeroPisteValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siDatePremierePublicationValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siDatePremierEnregistrementValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siDateCompositionValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siAuteurAllValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siCompositeurAllValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siGroupeAllValide) { this.detail.siMorceauAllValide = false; return; }\r\n    if (!this.detail.siFilePresentAllValid) {\r\n      this.detail.siMorceauAllValide = false;\r\n      return;\r\n    }\r\n    if (!this.detail.siFileNonPresentAllValid && this.fileNouveauList != null && this.fileNouveauList.length > 0) {\r\n      this.detail.siMorceauAllValide = false;\r\n      return;\r\n    }\r\n\r\n    this.detail.siMorceauAllValide = true;\r\n  }\r\n\r\n  changeAuteurAllValid() {\r\n    for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n      if(!this.detail.auteurs[i].siDelete){\r\n        this.detail.auteurs[i].siValide = this.detail.siAuteurAllValide;\r\n        this.detail.auteurs[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeAuteurUnitValid() {\r\n    for (let i = 0; i < this.detail.auteurs.length; i++) {\r\n      if (!this.detail.auteurs[i].siValide&&!this.detail.auteurs[i].siDelete) {\r\n        this.detail.siAuteurAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siAuteurAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeCompositeurAllValid() {\r\n    for (let i = 0; i < this.detail.compositeurs.length; i++) {\r\n      if(!this.detail.compositeurs[i].siDelete){\r\n        this.detail.compositeurs[i].siValide = this.detail.siCompositeurAllValide;\r\n        this.detail.compositeurs[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeCompositeurUnitValid() {\r\n    for (let i = 0; i < this.detail.compositeurs.length; i++) {\r\n      if (!this.detail.compositeurs[i].siValide&&!this.detail.compositeurs[i].siDelete) {\r\n        this.detail.siCompositeurAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siCompositeurAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n\r\n\r\n  changeGroupeAllValid(){\r\n    for (let i = 0; i < this.detail.groupes.length; i++) {\r\n      if(!this.detail.groupes[i].siDelete){\r\n        this.detail.groupes[i].siValide = this.detail.siGroupeAllValide;\r\n        this.detail.groupes[i].siChange = true;\r\n      }\r\n\r\n    }\r\n    this.changeAllUnitValid();\r\n  }\r\n  changeGroupeUnitValid() {\r\n    for (let i = 0; i < this.detail.groupes.length; i++) {\r\n      if (!this.detail.groupes[i].siValide&&!this.detail.groupes[i].siDelete) {\r\n        this.detail.siGroupeAllValide = false;\r\n        this.changeAllUnitValid();\r\n        return;\r\n      }\r\n    }\r\n    this.detail.siGroupeAllValide = true;\r\n    this.changeAllUnitValid();\r\n  }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/production-morceau-detail.component.ts","import { Component,OnInit } from '@angular/core';\r\nimport { Router }   from '@angular/router';\r\n\r\nimport {AbstractSearchComponent} from './abstract-search.compenent';\r\n\r\nimport { ProductionService } from '../services/production-service';\r\n\r\nimport { ProductionSearch,ProductionList } from '../objets/ProductionSearch';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n\r\n//import {IMyOptions, IMyDateModel} from 'mydatepicker';\r\n\r\n@Component({\r\n    \r\n selector: 'production-list',\r\n  templateUrl: '../vue/productionList.component.html'\r\n})\r\n\r\n\r\nexport class ProductionListComponent extends AbstractSearchComponent implements OnInit {\r\n  search:ProductionSearch;\r\n  //createTypeProductionCode:string;\r\n  typeProductionList:ObjSimple[]=[];\r\n  //rows: any[] =[];\r\n  //roleList:ObjSimple[]=[];\r\n  //groupeList:ObjSimple[]=[];// à voir si on récupere vraiment la liste des groupes pour la recherche d une personne, il peut y en avoir bcp\r\n\r\n  //aucunResultat:boolean=false;\r\n\r\n  constructor(\r\n    private productionService : ProductionService,\r\n    protected router:Router,\r\n  ){super(router)};\r\n\r\n  initPageSearch(): void {\r\n    this.typeProductionList= this.productionService.getTypeProductionList();\r\n    this.search = new ProductionSearch();\r\n    this.sorting.column=\"titreMorceau\";\r\n    this.search.typeProductionCode = \"ALBUM\";\r\n  } \r\n\r\n  onSubmit(){\r\n    super.onSubmit();\r\n    this.productionService.searchProduction(this.search.typeProductionCode,this.search.titreMorceau,this.search.titreAlbum,this.search.datePublicationIn,this.search.datePublicationOut,null).then(ret => {\r\n      this.rows = ret;\r\n      this.aucunResultat = (this.rows == null || this.rows.length==0);\r\n    });\r\n\r\n    /*\r\n    this.rows = [];\r\n    \r\n    this.personneService.personneSearch(this.search.nom,this.search.surnom,this.search.typeRole,this.search.groupeId,this.search.dateNaissance,this.search.dateMort).then(ret => {\r\n      this.rows = ret;\r\n      this.aucunResultat = (ret == null || ret.length==0)\r\n    });*/\r\n  }\r\n  reset(){\r\n    this.search = new ProductionSearch();\r\n    //this.rows = [];\r\n    this.search.typeProductionCode = \"ALBUM\";\r\n    this.onSubmit();\r\n  }\r\n\r\n  goToDetailAlbum(album:ProductionList,modeRedirect:string){\r\n    if(album.productionAlbumId!=null && album.productionAlbumId>0){\r\n      this.router.navigate(['/productionAlbumDetail', album.productionAlbumId +\"-\"+album.titreAlbum,modeRedirect]);\r\n    }\r\n  }\r\n  /*getResultatIdByRow(row:ProductionList):number{\r\n    return row.productionMorceauId!=null?row.productionMorceauId:row.productionAlbumId;\r\n  }*/\r\n  goToDetailMorceau(morceau:ProductionList,modeRedirect:string){\r\n    if(morceau.productionMorceauId!=null && morceau.productionMorceauId>0){\r\n      this.router.navigate(['/productionMorceauDetail', morceau.productionMorceauId+\"-\"+morceau.titreMorceau,modeRedirect]);\r\n    }\r\n  }\r\n  toDeleteMorceau(ele: ProductionList) {\r\n    if (confirm(\"Êtes-vous sûr de supprimer le morceau : \" + ele.titreMorceau)) {\r\n      this.productionService.deleteMorceau(ele.productionMorceauId).then(siSuccess => {\r\n        if (siSuccess) {\r\n          this.rows.splice(this.rows.indexOf(ele),1);\r\n          //delete[this.rows.indexOf(uti)];\r\n        }\r\n      });\r\n    }\r\n  }\r\n  toDeleteAlbum(ele: ProductionList) {\r\n    if (confirm(\"Êtes-vous sûr de supprimer l'album : \" + ele.titreAlbum)) {\r\n      this.productionService.deleteAlbum(ele.productionAlbumId).then(siSuccess => {\r\n        if (siSuccess) {\r\n          this.rows.splice(this.rows.indexOf(ele),1);\r\n          //delete[this.rows.indexOf(uti)];\r\n        }\r\n      });\r\n    }\r\n  }\r\n\r\n  changeTypeProduction(){\r\n    this.rows = [];\r\n    this.search.datePublicationIn=null;\r\n    this.search.datePublicationOut=null;\r\n    this.search.titreAlbum=null;\r\n    this.search.titreMorceau=null;\r\n    this.onSubmit();\r\n  }\r\n/*\r\n  onDateChanged(event: IMyDateModel,champs:string) {\r\n    let str= event.date.year+'-'+event.date.month+'-'+event.date.day;\r\n    if(champs=='IN'){\r\n      if(str==\"0-0-0\"){\r\n        this.search.datePublicationIn = null;\r\n        //this.search.datePublicationInStr = null;\r\n      } else {\r\n        //this.search.datePublicationIn = new Date(str);\r\n        this.search.datePublicationIn = str;\r\n      }\r\n    }else if(champs=='OUT'){\r\n      if(str==\"0-0-0\"){\r\n        this.search.datePublicationOut = null;\r\n        //this.search.datePublicationOutStr = null;\r\n      } else {\r\n        //this.search.datePublicationOut = new Date(str);\r\n        this.search.datePublicationOut   = str;\r\n      }\r\n    }\r\n  }*/\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/productionList.component.ts","import { Component, Input, OnInit } from '@angular/core';\r\nimport { UtilisateurModification } from '../../objets/UtilisateurModification';\r\n\r\nlet html: string = '<div class=\"row\" *ngIf=\"createur!=null\"> '\r\n  + '      <div class=\"col-lg-12\"> '\r\n  + '          <span class=\"label2\">Créé le : {{createur.dateModification | date: \\'yyyy-MM-dd\\'}} par {{getUtiNomAffichage(createur)}}</span> '\r\n  + '      </div> '\r\n  + '  </div> '\r\n  + '  <div class=\"row\" *ngIf=\"derniereModification!=null && derniereModification.nom.length>0\"> '\r\n  + '      <div class=\"col-lg-12\"> '\r\n  + '          <span class=\"label2\">Modifié le : {{derniereModification.dateModification | date: \\'yyyy-MM-dd\\'}} par {{getUtiNomAffichage(derniereModification)}}</span> '\r\n  + '      </div> '\r\n  + '  </div> '\r\n  + '  <div class=\"row\" *ngIf=\"list!=null && list.length>0\"> '\r\n  + '      <div class=\"col-lg-12\"> '\r\n  + '          <span class=\"label2\">Ayant participés : <span *ngFor=\"let uti of list;let last = last\">{{getUtiNomAffichage(uti)}} le {{uti.dateModification | date: \\'yyyy-MM-dd\\'}}<span  *ngIf=\"!last\"> / </span></span>  '\r\n  + '          </span> '\r\n  + '      </div> '\r\n  + '  </div>';\r\n\r\n\r\n@Component({\r\n  selector: 'p-detail-info-utilisateur',\r\n  template: html,\r\n})\r\n\r\nexport class DetailInfoUtilisateurComponent /*implements OnChanges, OnInit*/ {\r\n  @Input() createur: UtilisateurModification;\r\n  //@Input() dernierModificateurNom: string;\r\n  //@Input() dateDerniereModification: Date;\r\n\r\n  @Input('modificateurList')\r\n  set modificateurList(l: UtilisateurModification[]) {\r\n    if (l != null && l.length > 0) {\r\n      this.derniereModification = l[0];\r\n      let n: UtilisateurModification[] = [];\r\n      for (let i = 1; i < l.length; i++) {\r\n        if (l[i].utilisateurId != this.derniereModification.utilisateurId && l[i].utilisateurId != this.createur.utilisateurId) {\r\n          n.push(l[i]);\r\n        }\r\n\r\n      }\r\n      this.list = n;\r\n    } else {\r\n      this.list = [];\r\n    }\r\n\r\n  }\r\n  @Input() siPersonneInterne: boolean = false;\r\n\r\n  derniereModification: UtilisateurModification;\r\n  list: UtilisateurModification[] = [];\r\n\r\n  getUtiNomAffichage(uti: UtilisateurModification): string {\r\n    let str = uti.nom;\r\n    if (uti.prenom != null && uti.prenom.length > 0) str += \", \" + uti.prenom;\r\n    if (this.siPersonneInterne && uti.login != null && uti.login.length > 0) str += \", \" + uti.login;\r\n    if (this.siPersonneInterne && uti.email != null && uti.email.length > 0) str += \" (\" + uti.email + \")\";\r\n    return str;\r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/detail-info-utilisateur.component.ts","import { Component, Input,OnInit,OnChanges, SimpleChange,SimpleChanges } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'detail-message',\r\n  templateUrl: '../../vue/detail-message.component.html',\r\n  styles: ['.fa,.fa:hover {cursor:auto}']\r\n})\r\n\r\nexport class DetailMessageComponent /*implements OnChanges, OnInit*/{\r\n    @Input() siSubmit: boolean;\r\n    @Input() siSubmitSuccess: boolean;\r\n    \r\n    @Input() siValidationMode2: string;\r\n    @Input() siAllValid: boolean;\r\n    @Input() msgError: string;\r\n    @Input() siSubmitEnCours: boolean;\r\n    @Input() siChargementDataEnCours: boolean;\r\n    @Input() siPropositionCreateCompteUtilisateur: boolean=false;\r\n\r\n    //childState: string;\r\n\r\n    constructor(){};\r\n/*\r\n    ngOnChanges(changes: SimpleChanges) {\r\n        const siSubmitSuccessTmp: any = changes.siSubmitSuccess;\r\n\r\n    this.siSubmitSuccess = (siSubmitSuccessTmp as any).currentValue as boolean;\r\n    this.mode = changes.mode.currentValue as string;\r\n    this.siAllValid = changes.siAllValid.currentValue as boolean;\r\n    this.msgError = changes.msgError.currentValue as string;\r\n    this.siSubmitEnCours = changes.siSubmitEnCours.currentValue as boolean;\r\n  }\r\n\r\n    ngOnInit() {\r\n    console.log('on init');\r\n    console.log(this.siSubmitSuccess);\r\n  }*/\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/detail-message.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\n\r\nimport { LieuService } from '../../services/lieu-service';\r\n\r\nimport { LieuApi } from '../../objets/LieuGeoApi';\r\n\r\nlet strSpan = \"<div class=\\\"divConsultation\\\"><span *ngIf=\\\"!siInput\\\"  class='inputConsultation'>{{value}}</span></div>\";\r\n//let  strSpan = \"<span >aaaaaaaaaaaaaaaaaaaaaaaaa</span>\";\r\n\r\nlet strInput: string = '<div *ngIf=\\\"siInput\\\" (clickOutside)=\"deleteList()\"><input id={{id}} name={{name}} autocomplete=\"off\" type=\"text\" [(ngModel)]=\"value\" (keyup)=\"changeList()\" (focusin)=\"changeList()\" class=\"form-control {{classSiNonValid}}\" maxlength=\"50\"  required=\"{{siRequired}}\" >'\r\n  + '<div class=\"autoCompleteBlock\" *ngIf=\"list!=null && list.length>0\"><div *ngFor=\"let l of list\"  >'\r\n  + '    <div class=\"row\"><div class=\"col-lg-12\"><span (click)=\"changeValue(l)\" class=\"autoCompleteLigne\" >{{l.nom}} ({{l.code}})</span></div></div>'\r\n  + ' </div><div>';\r\n+ ' </div></div>';\r\n\r\nlet html: string = (strSpan + strInput);\r\n\r\n@Component({\r\n  selector: 'p-auto-complete-lieu-api',\r\n  template: html,\r\n  styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PAutoCompleteLieuApiComponent implements OnInit {\r\n\r\n  list:LieuApi[] = [];\r\n\r\n  //resultat: LieuApi = new LieuApi();\r\n  //maxValueAfficher: number = 5;// \r\n\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n\r\n  @Input() value: string;\r\n  @Input() valueId: number;\r\n  @Input() codeInsee: number;\r\n\r\n  @Input() siInput: boolean;\r\n  @Input('siValidationAndNonValid')\r\n  set siValidationAndNonValid(res: boolean) {\r\n    this.classSiNonValid = \"\";\r\n    if (res) {\r\n      this.classSiNonValid = \"validationColor\";\r\n    } else {\r\n\r\n    }\r\n  }\r\n  @Input() siRequired: boolean;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() valueIdChange = new EventEmitter<number>();\r\n  @Output() codeInseeChange = new EventEmitter<number>();\r\n\r\n  @Output() actionRetour = new EventEmitter<void>();\r\n  @Output() actionRetourSiInconnu = new EventEmitter<boolean>();\r\n\r\n  classSiNonValid: string = null;\r\n  compteur:number=0;\r\n\r\n  constructor(\r\n    private lieuService: LieuService\r\n  ) { }\r\n\r\n  ngOnInit() {\r\n    if (this.siInput == null) this.siInput = true;\r\n    if (this.siRequired == null) this.siRequired = false;\r\n  }\r\n\r\n  changeValue(lieu:LieuApi) {\r\n    //this.valueId = id;\r\n    this.value = lieu.nom;\r\n    this.list = [];\r\n    this.lieuService.getOrCreateLieuApi(lieu.nom,lieu.code,true).then(res =>{\r\n      if(res.success){\r\n        this.actionRetour.emit();\r\n        this.valueChange.emit(this.value);\r\n        this.valueIdChange.emit(res.id);\r\n        this.codeInseeChange.emit(lieu.code);\r\n        this.actionRetourSiInconnu.emit(false);\r\n      }else{\r\n        //erreur\r\n      }\r\n    })\r\n    \r\n  }\r\n\r\n  //liste static exemple liste de genre, statut...., se charge une seule fois ou est chargé en entrée listComplete\", tri dans \"list\" les objets\r\n  //liste dynamic exemple nom/prenom d'une personne, recharge à chaque fois la liste (TODO traiter le cas d'une liste dynamic en entrée)\r\n  changeList() {\r\n    this.list = [];\r\n    this.codeInsee = null;\r\n    this.valueId = null;\r\n\r\n    this.compteur++;//permet de récupérer la derniere liste correspondant à la derniere lettre saisie\r\n    let compteur2:number=this.compteur;\r\n    \r\n    if (this.value != null && this.value.length > 0) {//liste dynamic \r\n      this.lieuService.getLieuApi(this.value).then(res => {\r\n        if(this.compteur == compteur2){\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        }\r\n      });\r\n    }else{\r\n      this.apresChangeList();\r\n    }\r\n  }\r\n  apresChangeList() {\r\n    if (this.list.length == 1 && this.list[0].nom == this.value) {\r\n      this.codeInsee = this.list[0].code;\r\n      \r\n      this.lieuService.getOrCreateLieuApi(this.list[0].nom,this.list[0].code,true).then(res =>{\r\n        if(res.success){\r\n          this.actionRetour.emit();\r\n          this.valueChange.emit(this.value);\r\n          this.valueIdChange.emit(res.id);\r\n          this.codeInseeChange.emit(this.codeInsee);\r\n          this.actionRetourSiInconnu.emit(false);\r\n          this.list = [];\r\n        }else{\r\n          //erreur\r\n        }\r\n      })\r\n    }else{\r\n      this.actionRetour.emit();\r\n      this.valueChange.emit(this.value);\r\n      this.valueIdChange.emit(this.valueId);\r\n      this.codeInseeChange.emit(this.codeInsee);\r\n    }\r\n    \r\n  }\r\n  deleteList() {\r\n    this.list = [];\r\n    this.actionRetourSiInconnu.emit(this.codeInsee == null && this.value != null && this.value.length > 0);\r\n  }\r\n  \r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-auto-complete-lieu-api.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\n\r\nimport { GeneralService } from '../../services/general-service';\r\nimport { PersonneService } from '../../services/personnne-service';\r\nimport { GroupeService } from '../../services/groupe-service';\r\nimport { ProductionService } from '../../services/production-service';\r\nimport { Utils } from '../../services/utils.service';\r\nimport { EvenementService } from '../../services/evenement-service';\r\n\r\nimport { ObjSimple } from '../../objets/ObjSimple';\r\n\r\nlet strSpan = \"<div class=\\\"divConsultation\\\"><span *ngIf=\\\"!siInput\\\"  class='inputConsultation'>{{value}}</span></div>\";\r\n\r\nlet strInput: string = '<div *ngIf=\\\"siInput\\\" (clickOutside)=\"deleteList()\"><input id={{id}} name={{name}} autocomplete=\"off\" type=\"text\" [(ngModel)]=\"value\" (keyup)=\"changeList()\" (focusin)=\"changeList()\" class=\"form-control {{classSiNonValid}}\" maxlength=\"50\"  required=\"{{siRequired}}\" >'\r\n  + '<div class=\"autoCompleteBlock\" *ngIf=\"list!=null && list.length>0\"><div *ngFor=\"let l of list\"  >'//à ajouter si gestion du max : ;let index = index\r\n  + '    <div class=\"row\"><div class=\"col-lg-12\"><span (click)=\"changeValue(l.id,l.libelle)\" class=\"autoCompleteLigne\" >{{l.libelle}}</span></div></div>'\r\n  + ' </div><div>';\r\n+ ' </div></div>';\r\n\r\nlet html: string = (strSpan + strInput);\r\n\r\n@Component({\r\n  selector: 'p-auto-complete',\r\n  template: html,\r\n  styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PAutoCompleteComponent implements OnInit {\r\n\r\n  list = [];\r\n\r\n  //resultat: ObjSimple = new ObjSimple();\r\n  //maxValueAfficher: number = 5;// \r\n\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n\r\n  @Input() value: string;\r\n  @Input() valueId: number;\r\n\r\n  @Input() listComplete: ObjSimple[];\r\n  @Input() typeObject: string;//racourci qui gere automatiquement la liste de proposition voulu\r\n\r\n  @Input() siInput: boolean;\r\n  @Input('siValidationAndNonValid')\r\n  set siValidationAndNonValid(res: boolean) {\r\n    this.classSiNonValid = \"\";\r\n    if (res) {\r\n      this.classSiNonValid = \"validationColor\";\r\n    } else {\r\n\r\n    }\r\n  }\r\n  @Input() siRequired: boolean;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() valueIdChange = new EventEmitter<number>();\r\n\r\n  @Output() actionRetour = new EventEmitter<void>();\r\n  @Output() actionRetourSiInconnu = new EventEmitter<boolean>();\r\n\r\n  classSiNonValid: string = null;\r\n\r\n  constructor(\r\n    private generalService: GeneralService,\r\n    private personneService: PersonneService,\r\n    private groupeService: GroupeService,\r\n    private productionService: ProductionService,\r\n    private utisService: Utils,\r\n    private evenementService: EvenementService\r\n  ) { }\r\n\r\n  ngOnInit() {\r\n    if (this.siInput == null) this.siInput = true;\r\n    if (this.siRequired == null) this.siRequired = false;\r\n  }\r\n\r\n  changeValue(id: number, libelle: string) {\r\n    this.valueId = id;\r\n    this.value = libelle;\r\n    this.list = [];\r\n    this.actionRetour.emit();\r\n    this.valueChange.emit(this.value);\r\n    this.valueIdChange.emit(this.valueId);\r\n  }\r\n\r\n  //liste static exemple liste de genre, statut...., se charge une seule fois ou est chargé en entrée listComplete\", tri dans \"list\" les objets\r\n  //liste dynamic exemple nom/prenom d'une personne, recharge à chaque fois la liste (TODO traiter le cas d'une liste dynamic en entrée)\r\n  changeList() {\r\n    this.list = [];\r\n    this.valueId = null;\r\n    if (this.typeObject != null && this.typeObject.length > 0) {\r\n      if (this.typeObject == \"PERSONNE_NOM_PRENOM\" && this.value != null && this.value.length > 0) {//liste dynamic\r\n        this.personneService.getPersonneByConcatNomPrenom(this.value).then(res => {\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        });\r\n      }  else if (this.typeObject == \"GROUPE_NOM\" && this.value != null && this.value.length > 0) {//liste dynamic\r\n        this.groupeService.getGroupeSimpleByNom(this.value).then(res => {\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_NOM\" && this.value != null && this.value.length > 0) {//liste dynamic\r\n        this.productionService.getAlbumListByNom(this.value).then(res => {\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_MORCEAU\" && this.value != null && this.value.length > 0) {//liste dynamic \r\n        this.productionService.getMorceauListByNom(this.value).then(res => {\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        });\r\n      } else if (this.typeObject == \"ENTREPRISE\" && this.value != null && this.value.length > 0) {//liste dynamic \r\n        this.productionService.getEntrepriseListByNom(this.value).then(res => {\r\n          this.list = res;\r\n          this.apresChangeList();\r\n        });\r\n      } else if (this.typeObject == \"TYPE_GENRE\") {//liste static\r\n        this.generalService.getGenreList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"TONALITE\") {//liste static\r\n        this.productionService.getTypeTonaliteList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ORGANOLOGIE\") {//liste static\r\n        this.productionService.getTypeOrganologieList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"LANGUE\") {//liste static\r\n        this.generalService.getLangueList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_TYPE\") {//liste static\r\n        this.productionService.getTypeAlbumList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_MIXAGE\") {//liste static\r\n        this.productionService.getTypeMixageList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_MASTERING\") {//liste static\r\n        this.productionService.getTypeMasteringList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_STUDIO\") {//liste static\r\n        this.productionService.getStudioList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"LIEU\") {//liste static\r\n        this.generalService.getLieuList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"LANGUE\") {//liste static\r\n        this.generalService.getLangueList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"TYPE_EVENEMENT\") {//liste static\r\n        this.evenementService.getTypeEvenementList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"SUBDIVISION\") {//liste static\r\n        this.evenementService.getSubdivisionList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ANNEE\") {//liste static\r\n        this.listComplete = this.utisService.getAnneeListObjSimple();\r\n        this.listStatic();\r\n      } else if (this.typeObject == \"ROLE\") {//liste static\r\n        this.personneService.getRoleList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"ALBUM_CATEGORIE\") {//liste static\r\n        this.productionService.getCategorieList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      } else if (this.typeObject == \"SUPPORT\") {//liste static\r\n        this.productionService.getSupportList().then(res => {\r\n          this.listComplete = res;\r\n          this.listStatic();\r\n        });\r\n      }\r\n    }\r\n  }\r\n  apresChangeList() {\r\n    if (this.list.length == 1 && this.list[0].libelle == this.value) {\r\n      this.valueId = this.list[0].id;\r\n      this.list = [];\r\n    }\r\n    this.actionRetour.emit();\r\n    this.valueChange.emit(this.value);\r\n    this.valueIdChange.emit(this.valueId);\r\n  }\r\n  deleteList() {\r\n    this.list = [];\r\n    this.actionRetourSiInconnu.emit(this.valueId == null && this.value != null && this.value.length > 0);\r\n  }\r\n  listStatic() {\r\n    if (this.listComplete != null && this.listComplete.length > 0) {//liste entrée fixe\r\n      for (let i = 0; i < this.listComplete.length; i++) {\r\n        if (this.value == null || this.listComplete[i].libelle.toUpperCase().indexOf((this.value + \"\").toUpperCase()) != -1) {\r\n          this.list.push(this.listComplete[i]);\r\n        }\r\n      }\r\n    }\r\n    this.apresChangeList();\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-auto-complete.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\nimport { UtilisateurService } from '../../services/utilisateur-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un album</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addAlbumSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siAlbumExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">L\\'album existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-album-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateAlbumSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siAlbumExistant: boolean = false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, utilisateurService) };\r\n\r\n  addAlbumSimple() {\r\n\r\n    this.productionService.checkUniciteNomAlbum(this.value, null).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siAlbumExistant = true;\r\n      } else {\r\n        this.siAlbumExistant = false;\r\n        if (this.getUtilisateurId() == null || this.getUtilisateurId() <= 0) {\r\n          this.createUtilisateurCompteTemporaire();\r\n        } else {\r\n          this.saveGroupe();\r\n        }\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n  saveGroupe() {\r\n    this.productionService.createAlbumSimple(this.value, this.getUtilisateurId()).then(ret => {\r\n      if (ret > 0) {\r\n        this.actionRetour.emit(ret);\r\n      }\r\n    });\r\n  }\r\n  createUtilisateurCompteTemporaireAfter() {\r\n    this.saveGroupe();\r\n  }\r\n\r\n  changeNom() {\r\n    this.siAlbumExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-album-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une catégorie</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">La catégorie existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-categorie-album-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateCategorieAlbumSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant:boolean=false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addSimple() {\r\n\r\n    this.productionService.getCategorieAlbumByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant =true;\r\n      } else {\r\n        this.siExistant =false;\r\n        this.productionService.createCategorieAlbumSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n\r\n  changeNom() {\r\n    this.siExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-categorie-album-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une entreprise</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  +'     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addEntrepriseSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siEntrepriseExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">L\\'entreprise existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-entreprise-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateEntrepriseSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  valueId: number;\r\n  siEntrepriseExistant: boolean = false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addEntrepriseSimple() {\r\n    this.productionService.checkUniciteEntreprise(this.value).then(res => {\r\n      if (res == null || res) {\r\n        this.siEntrepriseExistant =false;\r\n        this.productionService.createEntrepriseSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }else{\r\n        this.siEntrepriseExistant =true;\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n  actionRetourAutoComplete() {\r\n    this.valueChange.emit(this.value);\r\n    if (this.valueId != null) this.actionRetour.emit(this.valueId);\r\n  }\r\n\r\n  changeNom() {\r\n    this.siEntrepriseExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-entreprise-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { GeneralService } from '../../services/general-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un genre</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  +'     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addGenreSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siGenreExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le genre existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-genre-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateGenreSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  valueId: number;\r\n  siGenreExistant: boolean = false;\r\n\r\n  constructor(\r\n    private generaleService: GeneralService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addGenreSimple() {\r\n    this.generaleService.checkUniciteGenreNom(this.value).then(res => {\r\n      if (res == null || res) {\r\n        this.siGenreExistant =false;\r\n        this.generaleService.createGenreSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }else{\r\n        this.siGenreExistant =true;\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n  actionRetourAutoComplete() {\r\n    this.valueChange.emit(this.value);\r\n    if (this.valueId != null) this.actionRetour.emit(this.valueId);\r\n  }\r\n\r\n  changeNom() {\r\n    this.siGenreExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-genre-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { GroupeService } from '../../services/groupe-service';\r\nimport { UtilisateurService } from '../../services/utilisateur-service';\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un groupe</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addGroupeSimpe()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siGroupeExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le groupe existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-groupe-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateGroupeSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<string>();\r\n  @Output() valueChange = new EventEmitter<string>();\r\n\r\n  siGroupeExistant: boolean = false;\r\n\r\n  constructor(\r\n    private groupeService: GroupeService,\r\n    protected router: Router,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, utilisateurService) };\r\n\r\n  addGroupeSimpe() {\r\n    this.groupeService.checkUniciteNomGroupe(this.value, null).then(res => {\r\n      if (res.length == 0) {\r\n        this.siGroupeExistant = false;\r\n        if (this.getUtilisateurId() == null || this.getUtilisateurId()<=0) {\r\n          this.createUtilisateurCompteTemporaire();\r\n        } else {\r\n          this.saveGroupe();\r\n        }\r\n\r\n      } else {\r\n        this.siGroupeExistant = true;\r\n      }\r\n    });\r\n  }\r\n  saveGroupe() {\r\n    this.groupeService.createGroupeSimple(this.value, this.getUtilisateurId()).then(ret => {\r\n      if (ret > 0) {\r\n        this.actionRetour.emit(ret);\r\n      }\r\n    });\r\n  }\r\n  createUtilisateurCompteTemporaireAfter() {\r\n    this.saveGroupe();\r\n  }\r\n\r\n  changeNom() {\r\n    this.siGroupeExistant = false;\r\n    this.valueChange.emit(this.value);\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-groupe-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { GeneralService } from '../../services/general-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une langue</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addLangueSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siLangueExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">La langue existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-langue-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateLangueSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siLangueExistant:boolean=false;\r\n\r\n  constructor(\r\n    private generaleService: GeneralService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addLangueSimple() {\r\n\r\n    this.generaleService.getLangueByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siLangueExistant =true;\r\n      } else {\r\n        this.siLangueExistant =false;\r\n        this.generaleService.createLangueSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n\r\n  changeNom() {\r\n    this.siLangueExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-langue-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { GeneralService } from '../../services/general-service';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un lieu</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addMorceauSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siLieuExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le lieu existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-lieu-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateLieuSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<string>();\r\n  @Output() valueChange = new EventEmitter<string>();\r\n\r\n  siLieuExistant: boolean = false;\r\n\r\n  constructor(\r\n    private generaleService: GeneralService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addMorceauSimple() {\r\n    this.generaleService.getLieuByNom(this.value).then(res => {\r\n      if (res == null || res.length == 0) {\r\n        this.siLieuExistant = false;\r\n        this.generaleService.createLieuSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }else {\r\n        this.siLieuExistant =true;\r\n      }\r\n    })\r\n  }\r\n\r\n  changeNom() {\r\n    this.siLieuExistant = false;\r\n    this.valueChange.emit(this.value);\r\n  }\r\n\r\n  ngOnInit() {\r\n\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-lieu-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un mastering</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addCreateSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le mastering existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-mastering-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateMasteringSimpleComponent extends AbstractAllComponent implements OnInit {\r\n\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant: boolean = false;\r\n\r\n  constructor(\r\n    private service: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addCreateSimple() {\r\n\r\n    this.service.getTypeMasteringByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant = true;\r\n      } else {\r\n        this.siExistant = false;\r\n        this.service.createTypeMasteringSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n  }\r\n  changeNom() {\r\n    this.siExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-mastering-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un mixage</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addCreateSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le mixage existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-mixage-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateMixageSimpleComponent extends AbstractAllComponent implements OnInit {\r\n\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant: boolean = false;\r\n\r\n  constructor(\r\n    private service: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addCreateSimple() {\r\n\r\n    this.service.getTypeMixageByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant = true;\r\n      } else {\r\n        this.siExistant = false;\r\n        this.service.createTypeMixageSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n  }\r\n  changeNom() {\r\n    this.siExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-mixage-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { ProductionService } from '../../services/production-service';\r\nimport { UtilisateurService } from '../../services/utilisateur-service';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un morceau</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addMorceauSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siMorceauExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le morceau existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-morceau-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateMorceauSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  @Output() onKeyUpNom = new EventEmitter<string>();\r\n\r\n  siMorceauExistant: boolean = false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, utilisateurService) };\r\n\r\n  addMorceauSimple() {\r\n    this.productionService.checkUniciteNomMorceau(this.value, null).then(res => {\r\n      if (res == null || res.length == 0) {\r\n        this.siMorceauExistant = false;\r\n        if (this.getUtilisateurId() == null || this.getUtilisateurId() <= 0) {\r\n          this.createUtilisateurCompteTemporaire();\r\n        } else {\r\n          this.saveGroupe();\r\n        }\r\n      } else {\r\n        this.siMorceauExistant = true;\r\n      }\r\n    })\r\n  }\r\n  saveGroupe() {\r\n    this.productionService.createMorceauSimple(this.value, this.getUtilisateurId()).then(ret => {\r\n      if (ret > 0) {\r\n        this.actionRetour.emit(ret);\r\n      }\r\n    });\r\n  }\r\n  createUtilisateurCompteTemporaireAfter() {\r\n    this.saveGroupe();\r\n  }\r\n\r\n  changeNom() {\r\n    this.siMorceauExistant = false;\r\n    this.onKeyUpNom.emit(this.value);\r\n  }\r\n\r\n  ngOnInit() {\r\n\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-morceau-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une organologie</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addOrganologieSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siOrganologieExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">L\\' organologie existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-organologie-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateOrganologieSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siOrganologieExistant:boolean=false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addOrganologieSimple() {\r\n\r\n    this.productionService.getTypeOrganologieByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siOrganologieExistant =true;\r\n      } else {\r\n        this.siOrganologieExistant =false;\r\n        this.productionService.createOrganologieSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n\r\n  changeNom() {\r\n    this.siOrganologieExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-organologie-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { PersonneService } from '../../services/personnne-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nimport { ObjSimple } from '../../objets/ObjSimple';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\"><div class=\"col-lg-12\"><label class=\"label1\">Création ou sélection d\\' une personne</label></div></div> '\r\n  + '<div class=\"row\"><div class=\"col-lg-7\"><p-auto-complete id=\"searchPersonne{{id}}\"  [value]=\"nomPrenom\" [valueId]=\"nomPrenomId\"  (actionRetour)=\"nomPrenomId=$event.id;nomPrenom=$event.libelle;\" (actionRetourSiInconnu)=\"siSearchPersonneInconnu=$event\" typeObject=\"PERSONNE_NOM_PRENOM\"> </p-auto-complete></div><div class=\"col-lg-4\"></div><div class=\"col-lg-1\"><i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addPersonneSimple()\" title=\"Créer\"  > </i></div></div>'\r\n  + '<p-create-personne-simple [value]=\"nomPrenom\" [siAffiche]=\"siSearchPersonneInconnu\" id=\"search2Personne{{id}}\" (actionRetour)=\"nomPrenomId=$event;siSearchPersonneInconnu=false\" (onKeyUpNomPrenom)=\"nomPrenom=$event;\"></p-create-personne-simple>'\r\n  + '<div class=\"row\" *ngIf=\"nomPrenomId!=null && nomPrenomId>0\"><div class=\"col-lg-12\"><label class=\"label1\">Sélection du rôle</label></div></div> '\r\n  + '<div class=\"row\" *ngIf=\"nomPrenomId!=null && nomPrenomId>0\"><div class=\"col-lg-7\">'\r\n  + ' <select class=\"form-control\" id=\"rolesearchPersonne{{id}}\" [(ngModel)]=\"roleId\" name=\"rolesearchPersonne{{id}}\" >'\r\n  + '  <option [value]=\"\"></option>'\r\n  + '  <option *ngFor=\"let r of roleLists\" [value]=\"r.id\">{{r.libelle}}</option>'\r\n  + ' </select>'\r\n  + '</div></div> '\r\n  \r\n  /*\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une personne avec role</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Nom</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <input type=\"text\" id=\"nom{{id}}\" name=\"nom{{name}}\" [(ngModel)]=\"nomCreate\" class=\"form-control\" maxlength=\"50\" (keyup)=\"changeNomPrenom()\" required>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addPersonneSimple()\" title=\"Créer\"  > </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Prénom</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <input type=\"text\" id=\"prenom{{id}}\" name=\"prenom{{name}}\" [(ngModel)]=\"prenomCreate\" class=\"form-control\" maxlength=\"50\" (keyup)=\"changeNomPrenom()\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + ''\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\" *ngIf=\"siRole\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Role</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <select class=\"form-control\" id=\"langue{{id}}\" [(ngModel)]=\"roleId\" name=\"langue{{id}}\"  (change)=\"changeNomPrenom()\" required>'\r\n  + '        <option [value]=\"\"></option>'\r\n  + '      <option  *ngFor=\"let r of roleLists\" [value]=\"r.id\">{{r.libelle}}</option>'\r\n  + '    </select>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + ''\r\n  + ' </div>'\r\n  + '</div>'*/\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-personne-role-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreatePersonneRoleSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n\r\n  @Input('value')\r\n  set value(value: string) {\r\n    if (value != null) {\r\n      //let nomPrenomCalcule = \"\";\r\n      //let roleCalcule: string;\r\n      if (value.indexOf(\"(\") != -1) {\r\n        this.nomPrenom = value.split(\"(\")[0].trim();\r\n        this.roleLibelle = value.split(\"(\")[1].replace(\")\", \"\").trim();\r\n        if (this.roleLibelle != null && this.roleLibelle.length > 0) {\r\n          for (let i = 0; i < this.roleLists.length; i++) {\r\n            if (this.roleLists[i].libelle == this.roleLibelle) {\r\n              this.roleId = this.roleLists[i].id;\r\n              continue;\r\n            }\r\n          }\r\n        }\r\n      } else {\r\n        this.nomPrenom = value;\r\n      }\r\n\r\n      if (this.nomPrenom.indexOf(\",\") > 0) {\r\n        this.nomCreate = this.nomPrenom.split(\",\")[0].trim();\r\n        this.prenomCreate = this.nomPrenom.split(\",\")[1].trim();\r\n      } else {\r\n        this.nomCreate = this.nomPrenom.trim();\r\n        this.prenomCreate = null;\r\n      }\r\n      console.log(\"input:\" + this.nomPrenom + \"_____\" + this.roleLibelle+\"_____\"+this.roleId);\r\n    }\r\n  }\r\n\r\n\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  @Output() onKeyUpNomPrenom = new EventEmitter<string>();\r\n\r\n  nomPrenom: string;\r\n  nomPrenomId: number;\r\n\r\n  siSearchPersonneInconnu: boolean = false;\r\n\r\n  nomCreate: string;\r\n  prenomCreate: string;\r\n  roleId: number;\r\n  roleLibelle: string;\r\n\r\n  roleLists: ObjSimple[] = [];\r\n\r\n  constructor(\r\n    private personneService: PersonneService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addPersonneSimple() {\r\n    if (this.roleId == null || this.nomCreate == null || this.nomCreate.trim().length == 0) {\r\n      return;\r\n    }\r\n\r\n    this.personneService.createGroupeCompositionArtisteRoleSimple(this.nomPrenomId, this.roleId).then(id => {\r\n      console.log(\"cas du role3:\" + id);\r\n      if (id > 0) {\r\n        this.actionRetour.emit(id);\r\n        for (let i = 0; i < this.roleLists.length; i++) {\r\n          if (this.roleLists[i].id == this.roleId) {\r\n            this.roleLibelle = this.roleLists[i].libelle;\r\n            continue;\r\n          }\r\n        }\r\n        this.onKeyUpNomPrenom.emit(this.nomPrenom + \" (\" + this.roleLibelle + \")\");\r\n      }\r\n    })\r\n\r\n\r\n\r\n  }\r\n  changeNomPrenom() {\r\n    let roleLibelle: string = null;\r\n    if (this.roleId != null) {\r\n      for (let i = 0; i < this.roleLists.length; i++) {\r\n        if (this.roleLists[i].id == this.roleId) {\r\n          roleLibelle = this.roleLists[i].libelle;\r\n          continue;\r\n        }\r\n      }\r\n    }\r\n    /*this.onKeyUpNomPrenom.emit(this.nomCreate + ((this.prenomCreate != null && this.prenomCreate.length > 0) ? (\", \" + this.prenomCreate) : \"\")\r\n      + ((roleLibelle != null && roleLibelle.length > 0) ? (\", \" + roleLibelle) : \"\"));*/\r\n    //console.log(\"test retour nom:\" + this.nomPrenom);\r\n    //this.onKeyUpNomPrenom.emit(this.nomPrenom);\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n\r\n    this.personneService.getRoleList().then(res => this.roleLists = res);\r\n    if (this.roleLibelle != null && this.roleLibelle.length > 0) {\r\n      for (let i = 0; i < this.roleLists.length; i++) {\r\n        if (this.roleLists[i].libelle == this.roleLibelle) {\r\n          this.roleId = this.roleLists[i].id;\r\n          continue;\r\n        }\r\n      }\r\n    }\r\n\r\n  }\r\n\r\n  getNomPrenom(): string {\r\n    this.value;\r\n    return this.nomCreate + ((this.prenomCreate != null && this.prenomCreate.length > 0) ? (\", \" + this.prenomCreate) : \"\");\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-personne-role-simple.component.ts","export enum UtilisateurProfilEnum{\r\n    'SUPER_ADMINISTRATEUR',\r\n    'CHERCHEUR',\r\n    'CONTRIBUTEUR',\r\n    'GRAND_PUBLIC',\r\n    'PUBLIC_NON_CONNECTE'\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/UtilisateurEnum.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { PersonneService } from '../../services/personnne-service';\r\nimport { UtilisateurService } from '../../services/utilisateur-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nimport { ObjSimple } from '../../objets/ObjSimple';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une personne</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Nom</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <input type=\"text\" id=\"nom{{id}}\" name=\"nom{{name}}\" [(ngModel)]=\"nomCreate\" class=\"form-control\" maxlength=\"50\" (keyup)=\"changeNomPrenom()\" required>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addPersonneSimple()\" title=\"Créer\"  > </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Prénom</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <input type=\"text\" id=\"prenom{{id}}\" name=\"prenom{{name}}\" [(ngModel)]=\"prenomCreate\" class=\"form-control\" maxlength=\"50\" (keyup)=\"changeNomPrenom()\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + ''\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\" *ngIf=\"siRole\">'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <label class=\"label1\">Role</label>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-7\">'\r\n  + '     <select class=\"form-control\" id=\"langue{{id}}\" [(ngModel)]=\"roleId\" name=\"langue{{id}}\"  (change)=\"changeNomPrenom()\" required>'\r\n  + '        <option [value]=\"\"></option>'\r\n  + '      <option  *ngFor=\"let r of roleLists\" [value]=\"r.id\">{{r.libelle}}</option>'\r\n  + '    </select>'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-1\">'\r\n  + ''\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siPersonneExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">La personne exite déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-personne-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreatePersonneSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() siRole: boolean;\r\n\r\n  @Input('value')\r\n  set value(value: string) {\r\n    if (value != null) {\r\n\r\n\r\n      if (value.indexOf(\",\") > 0) {\r\n        this.nomCreate = value.split(\",\")[0].trim();\r\n        this.prenomCreate = value.split(\",\")[1].trim();\r\n      } else {\r\n        this.nomCreate = value.trim();\r\n        this.prenomCreate = null;\r\n      }\r\n    }\r\n  }\r\n  @Output('valueChange') valueChange = new EventEmitter<string>();\r\n\r\n\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  @Output() onKeyUpNomPrenom = new EventEmitter<string>();\r\n\r\n  nomCreate: string;\r\n  prenomCreate: string;\r\n  roleId: number;\r\n\r\n  siPersonneExistant: boolean = false;\r\n\r\n  roleLists: ObjSimple[] = [];\r\n\r\n  constructor(\r\n    private personneService: PersonneService,\r\n    protected router: Router,\r\n    protected utilisateurService: UtilisateurService\r\n  ) { super(router, utilisateurService) };\r\n\r\n  addPersonneSimple() {\r\n    this.personneService.checkPersonneUniciteNomPersonne(this.nomCreate, this.prenomCreate, null).then(res => {\r\n      if (res.length == 0) {\r\n        this.siPersonneExistant = false;\r\n        if (this.getUtilisateurId() == null || this.getUtilisateurId() <= 0) {\r\n          this.createUtilisateurCompteTemporaire();\r\n        } else {\r\n          this.saveGroupe();\r\n        }\r\n      } else {\r\n        this.siPersonneExistant = true;\r\n      }\r\n    });\r\n  }\r\n  saveGroupe() {\r\n    this.personneService.createPersonneSimple(this.nomCreate, this.prenomCreate, this.getUtilisateurId()).then(ret => {\r\n      if (ret > 0) {\r\n        this.actionRetour.emit(ret);\r\n      }\r\n    });\r\n  }\r\n  createUtilisateurCompteTemporaireAfter() {\r\n    this.saveGroupe();\r\n  }\r\n  changeNomPrenom() {\r\n    this.siPersonneExistant = false;\r\n    let roleLibelle: string = null;\r\n    if (this.roleId != null) {\r\n      for (let i = 0; i < this.roleLists.length; i++) {\r\n        if (this.roleLists[i].id == this.roleId) {\r\n          roleLibelle = this.roleLists[i].libelle;\r\n          continue;\r\n        }\r\n      }\r\n    }\r\n    //this.onKeyUpNomPrenom.emit(this.nomCreate + ((this.prenomCreate != null && this.prenomCreate.length > 0) ? (\", \" + this.prenomCreate) : \"\")\r\n    //  + ((roleLibelle != null && roleLibelle.length > 0) ? (\", \" + roleLibelle) : \"\"));\r\n    this.valueChange.emit(this.nomCreate + ((this.prenomCreate != null && this.prenomCreate.length > 0) ? (\", \" + this.prenomCreate) : \"\")\r\n      + ((roleLibelle != null && roleLibelle.length > 0) ? (\", \" + roleLibelle) : \"\"));\r\n  }\r\n\r\n  ngOnInit() {\r\n\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n    if (this.siRole == null) this.siRole = false;\r\n    if (this.siRole) {\r\n      this.personneService.getRoleList().then(res => this.roleLists = res);\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-personne-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { PersonneService } from '../../services/personnne-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un role</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  +'     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addRoleSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siRoleExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le role existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-role-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateRoleSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  valueId: number;\r\n  siRoleExistant: boolean = false;\r\n\r\n  constructor(\r\n    private personneService: PersonneService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addRoleSimple() {\r\n    this.personneService.getRoleByLibelle(this.value).then(res => {\r\n      if (res == null || res.length==0) {\r\n        this.siRoleExistant =false;\r\n        this.personneService.createRoleSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }else{\r\n        this.siRoleExistant =true;\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n  actionRetourAutoComplete() {\r\n    this.valueChange.emit(this.value);\r\n    if (this.valueId != null) this.actionRetour.emit(this.valueId);\r\n  }\r\n\r\n  changeNom() {\r\n    this.siRoleExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-role-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un studio</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addCreateSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le studio existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-studio-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateStudioSimpleComponent extends AbstractAllComponent implements OnInit {\r\n\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant: boolean = false;\r\n\r\n  constructor(\r\n    private service: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addCreateSimple() {\r\n\r\n    this.service.getTypeStudioByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant = true;\r\n      } else {\r\n        this.siExistant = false;\r\n        this.service.createStudioSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n  }\r\n  changeNom() {\r\n    this.siExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-studio-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { EvenementService } from '../../services/evenement-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une subdivision</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">La subdivision existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-subdivision-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateSubdivisionComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant:boolean=false;\r\n\r\n  constructor(\r\n    private productionService: EvenementService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addSimple() {\r\n\r\n    this.productionService.getSubdivisionByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant =true;\r\n      } else {\r\n        this.siExistant =false;\r\n        this.productionService.createSubdivisionSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n\r\n  changeNom() {\r\n    this.siExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-subdivision-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un support</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"sExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le support existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-support-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateSupportSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant: boolean = false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router,\r\n  ) { super(router, null) };\r\n\r\n  addSimple() {\r\n    this.productionService.getTypeSupportByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant =true;\r\n      } else {\r\n        this.siExistant =false;\r\n        this.productionService.createSupportSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    });\r\n  }\r\n  changeNom() {\r\n    this.siExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-support-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'une tonalité</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addTonaliteSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siTonaliteExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">La tonalité existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-tonalite-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateTonaliteSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siTonaliteExistant:boolean=false;\r\n\r\n  constructor(\r\n    private productionService: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addTonaliteSimple() {\r\n\r\n    this.productionService.getTypeTonaliteByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siTonaliteExistant =true;\r\n      } else {\r\n        this.siTonaliteExistant =false;\r\n        this.productionService.createTonaliteSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n\r\n  changeNom() {\r\n    this.siTonaliteExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-tonalite-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ProductionService } from '../../services/production-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un type d\\'album</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  + '     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addCreateSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le type existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-type-album-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateTypeAlbumSimpleComponent extends AbstractAllComponent implements OnInit {\r\n\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  siExistant: boolean = false;\r\n\r\n  constructor(\r\n    private service: ProductionService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addCreateSimple() {\r\n\r\n    this.service.getTypeAlbumByLibelle(this.value).then(res => {\r\n      if (res != null && res.length > 0) {\r\n        this.siExistant = true;\r\n      } else {\r\n        this.siExistant = false;\r\n        this.service.createTypeAlbum(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }\r\n    })\r\n  }\r\n  changeNom() {\r\n    this.siExistant = false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-type-album-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { GeneralService } from '../../services/general-service';\r\n\r\nimport { AbstractAllComponent } from '../abstract-all.component';\r\n\r\nlet html: string = '<div *ngIf=\"siAffiche\" class=\"pCreateBlock\">'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-12\">'\r\n  + '  <label class=\"label1\">Création rapide d\\'un type d\\'événement</label>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div class=\"row\">'\r\n  + ' <div class=\"col-lg-8\">'\r\n  +'     <input type=\"text\" id=\"{{id}}\" name=\"{{name}}\" [(ngModel)]=\"value\" class=\"form-control\" (keyup)=\"changeNom()\" maxlength=\"50\">'\r\n  + ' </div>'\r\n  + ' <div class=\"col-lg-4\">'\r\n  + '     <i class=\"fa fa-plus fa-lg\" aria-hidden=\"true\" (click)=\"addTypeSimple()\" title=\"Créer\"> </i>'\r\n  + ' </div>'\r\n  + '</div>'\r\n  + '<div *ngIf=\"siTypeExistant\" class=\"row\"><div class=\"col-lg-12\"><div class=\"alert alert-danger\">Le type existe déjà</div></div></div>'\r\n  + '</div>'\r\n\r\n@Component({\r\n  selector: 'p-create-type-evenement-simple',\r\n  template: html,\r\n  styleUrls: ['./p-create-simple.component.css']\r\n})\r\n\r\nexport class PCreateTypeEvenementSimpleComponent extends AbstractAllComponent implements OnInit {\r\n  @Input() siAffiche: boolean;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() actionRetour = new EventEmitter<number>();\r\n  //@Output() onKeyUpNom = new EventEmitter<void>();\r\n\r\n  valueId: number;\r\n  siTypeExistant: boolean = false;\r\n\r\n  constructor(\r\n    private generaleService: GeneralService,\r\n    protected router: Router\r\n  ) { super(router,null) };\r\n\r\n  addTypeSimple() {\r\n    this.generaleService.checkUniciteTypeEvenementNom(this.value).then(res => {\r\n      if (res == null || res) {\r\n        this.siTypeExistant =false;\r\n        this.generaleService.createTypeEvenementSimple(this.value).then(ret => {\r\n          if (ret > 0) {\r\n            this.actionRetour.emit(ret);\r\n          }\r\n        });\r\n      }else{\r\n        this.siTypeExistant =true;\r\n      }\r\n    })\r\n\r\n\r\n  }\r\n  actionRetourAutoComplete() {\r\n    this.valueChange.emit(this.value);\r\n    if (this.valueId != null) this.actionRetour.emit(this.valueId);\r\n  }\r\n\r\n  changeNom() {\r\n    this.siTypeExistant =false;\r\n    this.valueChange.emit(this.value);\r\n    //this.onKeyUpNom.emit();\r\n  }\r\n\r\n  ngOnInit() {\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-create-type-evenement-simple.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\n\r\nimport { FileService } from '../../services/file-service';\r\n \r\nimport { FilePind } from '../../objets/FilePind';\r\n\r\nlet html = ''\r\n    + '<h4>Gestionnaire des fichiers</h4>'\r\n    + '<p-label valueLabel=\"Fichier(s) présent(s)\" siAllLigne=\"true\" forLabel=\"filePresent\" [siValidationMode]=\"siValidationMode\" idCheckBox=\"siFilePresentAllValid\" [(valueCheckBox)]=\"detail.siFilePresentAllValid\"  (actionRetour)=\"changeFileValidAll(true)\">'\r\n    + '</p-label>'\r\n    + '<div *ngFor=\"let f of detail.fileList\">'\r\n    + '    <div class=\"row\" (change)=\"f.siChange=true\" [hidden]=\"f.siDelete || f.nom==null || f.nom.length==0\">'\r\n    + '        <div class=\"col-lg-1 marginCheckBoxValidation1\" *ngIf=\"siValidationMode\">'\r\n    + '            <input type=\"checkbox\" class=\"form-control\" id=\"filePresent{{f.id}}\" [(ngModel)]=\"f.siValide\" name=\"filePresent{{f.id}}\"'\r\n    + '                #filePresent=\"ngModel\" (change)=\"changeFileValidUnit(true)\">'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-7 classRed\" *ngIf=\"siValidationMode&&!f.siValide\">'\r\n    + '            <label for=\"nom\" class=\"label1\"><a (click)=\"downlaodFile(f)\">{{f.nom}}</a></label>'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-7\" *ngIf=\"!(siValidationMode&&!f.siValide)\">'\r\n    + '            <label for=\"nom\" class=\"label1\"><a (click)=\"downlaodFile(f)\">{{f.nom}}</a></label>'\r\n    + '        </div>'\r\n    \r\n    + '        <div class=\"col-lg-1\">'\r\n    + '            <i *ngIf=\"siValidationMode || !siValidationMode&&!f.siValide\" class=\"fa fa-minus-square fa-lg\" aria-hidden=\"true\" title=\"Supprimer\" (click)=\"f.siDelete=true;siSubmit=false\"></i>'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-3\" *ngIf=\"siValidationMode\">'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-4\" *ngIf=\"!siValidationMode\">'\r\n    + '        </div>'\r\n    + '    </div>'\r\n    + '</div>'\r\n    + '<p-label valueLabel=\"Ajouter des fichiers à la notice\" siAllLigne=\"true\" forLabel=\"fileNonPresent\" [siValidationMode]=\"siValidationMode\" idCheckBox=\"siFileNonPresentAllValid\" [(valueCheckBox)]=\"detail.siFileNonPresentAllValid\"  (actionRetour)=\"changeFileValidAll(false)\">'\r\n    + '</p-label>'\r\n    + '<div class=\"row\">'\r\n    + '    <div class=\"col-lg-12\">'\r\n    + '        <label class=\"label1 label2\">Fichiers autorisés : {{getFileExtensionAutorise()}}</label>'\r\n    + '    </div>'\r\n    + '</div>'\r\n    + '<div class=\"row\">'\r\n    + '    <div class=\"col-lg-12\">'\r\n    + '        <label class=\"label1 label2\">Taille max : {{getSizeMaxFileImport()}}</label>'\r\n    + '    </div>'\r\n    + '</div>'\r\n    + '<div *ngFor=\"let fileNouveau of fileNouveauList\">'\r\n    + '    <div class=\"row\" [hidden]=\"fileNouveau.siDelete\">'\r\n    + '        <div class=\"col-lg-1 marginCheckBoxValidation1\" *ngIf=\"siValidationMode\">'\r\n    + '            <input type=\"checkbox\" class=\"form-control\" id=\"filePresent{{fileNouveau.id}}\" [(ngModel)]=\"fileNouveau.siValide\" name=\"filePresent{{fileNouveau.id}}\"'\r\n    + '                #filePresent=\"ngModel\" (change)=\"changeFileValidUnit(false)\">'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-7\">'\r\n    + '            <input type=\"file\" (change)=\"addNewFile($event,fileNouveau)\" id=\"fileNouveau{{fileNouveau.id}}\" name=\"fileNouveau{{fileNouveau.id}}\"'\r\n    + '                placeholder=\"Upload file...\" />'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-1\">'\r\n    + '            <i class=\"fa fa-minus-square fa-lg\" aria-hidden=\"true\" title=\"Supprimer\" (click)=\"fileNouveau.siDelete=true;siSubmit=false\"></i>'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-3\" *ngIf=\"siValidationMode\">'\r\n    + '        </div>'\r\n    + '        <div class=\"col-lg-4\" *ngIf=\"!siValidationMode\">'\r\n    + '        </div>'\r\n    + '    </div>'\r\n    + '    <div class=\"row alert alert-danger\" [hidden]=\"!fileNouveau.siError||fileNouveau.siDelete\">'\r\n    + '        {{fileNouveau.msg}}'\r\n    + '    </div>'\r\n    + '</div>'\r\n    + '<div class=\"row\" *ngIf=\"siInputMode\">'\r\n    + '    <div class=\"col-lg-8 marginCheckBoxValidation1\" *ngIf=\"siValidationMode\">'\r\n    + '    </div>'\r\n    + '    <div class=\"col-lg-1\" *ngIf=\"siValidationMode\">'\r\n    + '        <i *ngIf=\"siValidationMode || !siValidationMode&&!detail.siFilePresentAllValid\" class=\"fa fa-plus-square fa-lg\" aria-hidden=\"true\" (click)=\"addFile();siSubmit=false\" title=\"Ajouter\"></i>'\r\n    + '    </div>'\r\n    + '    <div class=\"col-lg-3\" *ngIf=\"siValidationMode\">'\r\n    + '    </div>'\r\n    + '    <div class=\"col-lg-8\" *ngIf=\"!siValidationMode\">'\r\n    + '        <i *ngIf=\"siValidationMode || !siValidationMode&&!detail.siFilePresentAllValid\" class=\"fa fa-plus-square fa-lg\" aria-hidden=\"true\" (click)=\"addFile();siSubmit=false\" title=\"Ajouter\"></i>'\r\n    + '    </div>'\r\n    + '    <div class=\"col-lg-4\" *ngIf=\"!siValidationMode\">'\r\n    + '    </div>'\r\n    + '</div>'\r\n\r\n@Component({\r\n    selector: 'p-file',\r\n    template: html,\r\n    styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PFileComponent implements OnInit {\r\n    //@Input() fileList: FilePind[];//obligatoire\r\n    //@Input() fileNouveauList: FilePind[];//obligatoire\r\n    @Input() siValidationMode: boolean;\r\n    @Input() detail: any;\r\n    @Input() siInputMode:boolean=true;\r\n\r\n    @Input('siSubmitOk')//réinitialise la liste des nouveaux fichier, sinon on affiche les anciens qui ont été enregistré\r\n    set siSubmitOk(value: boolean) {\r\n        if (value) {\r\n            this.fileNouveauList = [];\r\n        }\r\n    }\r\n    @Input('siChangeFileValidAll')//gestion des checkbox de validation si on coche tout valider\r\n    set siChangeFileValidAll(value: boolean) {\r\n        this.changeFileValidAll(true);\r\n        this.changeFileValidAll(false);\r\n    }\r\n\r\n    @Output() addFileRetour = new EventEmitter<Object>();\r\n    @Output() onChangeValidation = new EventEmitter();\r\n\r\n\r\n    idTmp: number = -1;\r\n    fileNouveauList: FilePind[];\r\n\r\n    constructor(\r\n        private fileService: FileService,\r\n    ) { };\r\n\r\n    ngOnInit() {\r\n        this.fileNouveauList = [];\r\n        if(this.siValidationMode==null) this.siValidationMode = false;\r\n\r\n    }\r\n\r\n\r\n    //fichier\r\n    getFileExtensionAutorise(): string {\r\n        return this.fileService.getFileExtensionAutorise();\r\n    }\r\n    getSizeMaxFileImport(): string {\r\n        return this.fileService.getSizeMaxFileImport();\r\n    }\r\n    downlaodFile(f: FilePind) {\r\n        this.fileService.downlaodFile(f.nomBase);\r\n    }\r\n    addNewFile(fileInput: any, nouveau: FilePind) {\r\n        this.fileService.addNewFileToList(fileInput, nouveau);\r\n        /*if (!nouveau.siError) {\r\n            //this.addFileRetour.emit(nouveau);\r\n        }*/\r\n    }\r\n    addFile() {\r\n        let f = new FilePind();\r\n        f.id = this.idTmp;\r\n        f.siDelete = false;\r\n        f.siError = false;\r\n        if (this.siValidationMode) {\r\n            f.siValide = true;\r\n        } else {\r\n            f.siValide = false;\r\n        }\r\n        if (this.fileNouveauList == null) this.fileNouveauList = [];\r\n        this.fileNouveauList.push(f);\r\n        this.idTmp--;\r\n        this.addFileRetour.emit(f);\r\n    }\r\n\r\n    changeFileValidAll(siPresent: boolean) {\r\n        if (siPresent && this.detail.fileList != null) {\r\n            for (let i = 0; i < this.detail.fileList.length; i++) {\r\n                this.detail.fileList[i].siValide = this.detail.siFilePresentAllValid;\r\n                this.detail.fileList[i].siChange = true;\r\n            }\r\n        } else if (!siPresent && this.fileNouveauList != null) {\r\n            for (let i = 0; i < this.fileNouveauList.length; i++) {\r\n                this.fileNouveauList[i].siValide = this.detail.siFileNonPresentAllValid;\r\n            }\r\n        }\r\n        this.onChangeValidation.emit();\r\n    }\r\n    changeFileValidUnit(siPresent: boolean) {// soit variante soit surnom\r\n        if (siPresent) {\r\n            for (let i = 0; i < this.detail.fileList.length; i++) {\r\n                if (!this.detail.fileList[i].siValide) {\r\n                    this.detail.siFilePresentAllValid = false;\r\n                    this.onChangeValidation.emit();\r\n                    return;\r\n                }\r\n            }\r\n            this.detail.siFilePresentAllValid = true;\r\n        } else if (!siPresent) {\r\n            for (let i = 0; i < this.fileNouveauList.length; i++) {\r\n                if (!this.fileNouveauList[i].siValide) {\r\n                    this.detail.siFileNonPresentAllValid = false;\r\n                    this.onChangeValidation.emit();\r\n                    return;\r\n                }\r\n            }\r\n            this.detail.siFileNonPresentAllValid = true;\r\n        }\r\n        this.onChangeValidation.emit();\r\n    }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-file.component.ts","import { Component, EventEmitter, Input, Output, OnInit, OnChanges } from '@angular/core';\r\nimport { IMyOptions, MyDatePicker } from 'mydatepicker';\r\n\r\nimport { Utils } from '../../services/utils.service';\r\n\r\nlet strInput = '<input  type=\"text\" id=\"{{id}}\" autocomplete=\"off\" maxlength=\"{{nbrCharMaxText}}\" name=\"{{name}}\" (keyup)=\"onChange()\" (change)=\"onChange2()\" [(ngModel)]=\"value\" class=\"form-control {{classSiNonValid}}\" required=\"{{siRequired}}\" placeholder=\"{{placeholder}}\" pattern=\"{{pattern}}\">';\r\nlet strNumber = '<input  type=\"text\" id=\"{{id}}\" autocomplete=\"off\" maxlength=\"{{nbrCharMaxNumber}}\" name=\"{{name}}\" (keyup)=\"onChangeNum()\" (change)=\"onChangeNum2()\" [(ngModel)]=\"value\" class=\"form-control {{classSiNonValid}}\" required=\"{{siRequired}}\" placeholder=\"{{placeholder}}\"  pattern=\"{{pattern}}\">';\r\nlet strTextArea = '<textarea class=\"form-control {{classSiNonValid}}\" id=\"{{id}}\" [(ngModel)]=\"value\" name=\"{{name}}\" maxlength=\"{{nbrCharMaxArea}}\" rows=\"{{nbrRowArea}}\" (keyup)=\"onChange()\" (change)=\"onChange2()\" placeholder=\"{{placeholder}}\"></textarea>';\r\nlet strDatePicker = '<my-date-picker class=\" {{classSiNonValid}}\" name=\"{{name}}\" id=\"{{id}}\" [(ngModel)]=\"valueDate\" (dateChanged)=\"onChangeDate($event)\" [options]=\"myDatePickerOptions\"></my-date-picker>';\r\n//let strDatePicker = '<div class=\"titi\"><my-date-picker name=\"{{name}}\" class=\"{{classSiNonValid}}\" id=\"{{id}}\" [(ngModel)]=\"valueDate\" (dateChanged)=\"onChangeDate($event)\" [options]=\"myDatePickerOptions\"></my-date-picker></div>';\r\n/*let sqlDateTest = '<div class=\"row\">'\r\n  + '<div class=\"col-lg-4\"><select class=\"form-control\" id=\"{{id}}\" [(ngModel)]=\"valueAnnee\"  (change)=\"changeDateTestAnneeMois()\" required=\"{{siRequired}}\"><option [value]=\"\"></option><option *ngFor=\"let p of anneeList\" [value]=\"p\">{{p}}</option> </select></div>'\r\n  + '<div class=\"col-lg-5\"><select class=\"form-control\" id=\"{{id}}\" [(ngModel)]=\"valueMois\"  (change)=\"changeDateTestAnneeMois()\"><option [value]=\"\"></option><option *ngFor=\"let p of moisList\" [value]=\"p.id\">{{p.libelle}}</option> </select></div>'\r\n  + '<div class=\"col-lg-3\"><select class=\"form-control\" id=\"{{id}}\" [(ngModel)]=\"valueJour\"  (change)=\"changeDateTest()\"><option [value]=\"\"></option><option *ngFor=\"let p of jourList\" [value]=\"p\">{{p}}</option> </select></div>'\r\n  + '</div>'*/\r\n  let sqlDateList = ''//<div class=\"form-inline\">\r\n  + '<select class=\"form-control {{classSiNonValid}}\" id=\"dateAnnee{{id}}\" name=\"dateAnnee{{id}}\" [(ngModel)]=\"valueAnnee\"  (change)=\"changeDateTestAnneeMois()\" required=\"{{siRequired}}\" ><option [value]=\"\" ></option><option *ngFor=\"let p of anneeList\" [value]=\"p\">{{p}}</option> </select>'\r\n  + '<label class=\"mr-sm-2 mb-0\"></label>'\r\n  + '<select class=\"form-control {{classSiNonValid}}\" id=\"dateMois{{id}}\" name=\"dateMois{{id}}\" [(ngModel)]=\"valueMois\"  (change)=\"changeDateTestAnneeMois()\"><option [value]=\"\"></option><option *ngFor=\"let p of moisList\" [value]=\"p.id\">{{p.libelle}}</option> </select>'\r\n  + '<label class=\"mr-sm-2 mb-0\"></label>'\r\n  + '<select class=\"form-control {{classSiNonValid}}\" id=\"dateJour{{id}}\" name=\"dateJour{{id}}\" [(ngModel)]=\"valueJour\"  (change)=\"changeDateTest()\"><option [value]=\"\"></option><option *ngFor=\"let p of jourList\" [value]=\"p\">{{p}}</option> </select>'\r\n  + '';//</div>\r\nlet strSpan = \"<div  class=\\\"divConsultation\\\"><span class='inputConsultation'>{{value}}</span></div>\";\r\nlet strSpanDate2 = \"<div  class=\\\"divConsultation\\\"><span class='inputConsultation'>{{value| format :'date2'}}</span></div>\";\r\nlet strSpanTextArea = \"<div  class=\\\"divConsultation\\\"><span class='inputConsultation line-breaker'>{{value}}</span></div>\";\r\n\r\nlet html: string = \"<div *ngIf=\\\"siInput&&type=='text'\\\">\" + strInput + \"</div><div *ngIf=\\\"siInput&&type=='number'\\\">\" + strNumber + \"</div><div *ngIf=\\\"siInput&&type=='textarea'\\\">\" + strTextArea + \"</div><div *ngIf=\\\"siInput&&type=='date'\\\">\" + strDatePicker + \"</div><div *ngIf=\\\"!siInput&&(type=='text'||type=='date'||type=='number')\\\">\" + strSpan + \"</div><div *ngIf=\\\"!siInput&&type=='date2'\\\">\" + strSpanDate2 + \"</div><div *ngIf=\\\"!siInput&&type=='textarea'\\\">\" + strSpanTextArea + \"</div><div *ngIf=\\\"siInput&&type=='date2'\\\">\" + sqlDateList + \"</div>\";\r\n\r\n@Component({\r\n  selector: 'p-input',\r\n  template: html,\r\n  styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PInputComponent implements OnInit, OnChanges {\r\n  @Input() type: string;\r\n  @Input() id: string;\r\n  @Input() name: string;\r\n  @Input() value: string;\r\n  @Input() siRequired: boolean;\r\n\r\n  @Input() change: Object;\r\n\r\n  @Input() siInput: boolean = true;\r\n  @Input('siValidationAndNonValid')\r\n  set siValidationAndNonValid(res: boolean) {\r\n    if (res) {\r\n      if (this.type != null && this.type == 'date') {\r\n        this.classSiNonValid = \"validationColorDate\";\r\n      } else {\r\n        this.classSiNonValid = \"validationColor\";\r\n      }\r\n    } else {\r\n      this.classSiNonValid = null;\r\n    }\r\n  }\r\n  @Input() nbrCharMaxNumber: number = 10;\r\n  @Input() nbrCharMaxText: number = 50;\r\n  @Input() nbrCharMaxArea: number = 500;\r\n  @Input() nbrRowArea: number = 5;\r\n\r\n  @Input() placeholder: string = null;\r\n  @Input() pattern: string = null;\r\n\r\n  @Output() valueChange = new EventEmitter<Object>();\r\n  @Output() actionRetour = new EventEmitter<void>();//keyup // sauf pour les dates\r\n  @Output() actionRetour2 = new EventEmitter<void>();//onChange\r\n  valueDate: Object;\r\n  classSiNonValid: string = null;\r\n  siErreurNonNumber: boolean = false;\r\n\r\n  siNumeroPisteAvecLettre:boolean=false;\r\n\r\n  anneeList: number[] = new Utils().getAnneeList2();\r\n  moisList = [{ id: 1, libelle: \"Janvier\" },\r\n              { id: 2, libelle: \"Février\" },\r\n              { id: 3, libelle: \"Mars\" },\r\n              { id: 4, libelle: \"Avril\" },\r\n              { id: 5, libelle: \"Mai\" },\r\n              { id: 6, libelle: \"Juin\" },\r\n              { id: 7, libelle: \"Juillet\" },\r\n              { id: 8, libelle: \"Août\" },\r\n              { id: 9, libelle: \"Septembre\" },\r\n              { id: 10, libelle: \"Octobre\" },\r\n              { id: 11, libelle: \"Novembre\" },\r\n              { id: 12, libelle: \"Décembre\" }];\r\n  jourList: number[] = [];\r\n  valueAnnee: number;\r\n  valueMois: number;\r\n  valueJour: number;\r\n\r\n  private myDatePickerOptions: IMyOptions = {\r\n    dateFormat: 'yyyy-mm-dd',//pour changer les options les mettres ici et rajouter \"[options]=\"myDatePickerOptions\"\r\n    width: '100%',\r\n\r\n    //ajouter la local : fr\r\n  };\r\n\r\n  //valueDate:Object=(this.value!=null && (this.value+\"\").indexOf(\"-\")!=-1)?({ date: { year: +this.value.split(\"-\")[0], month: +this.value.split(\"-\")[1], day: +this.value.split(\"-\")[2] } }):null;\r\n\r\n  /*\r\n  getValueStr(): string {\r\n    /*\r\n    if (this.type == \"date\") {\r\n      if (this.value != null && this.value.date != null) {\r\n        let year = this.value.date.year;\r\n        let month = this.value.date.month + \"\";\r\n        if (month != null && month.length == 1) {\r\n          month = \"0\" + month;\r\n        }\r\n        let day = this.value.date.day + \"\";\r\n        if (day != null && day.length == 1) {\r\n          day = \"0\" + day;\r\n        }\r\n        return (year + \"-\" + month + \"-\" + day);\r\n      }\r\n      return null;\r\n    }*/\r\n  /*return this.value + \"\";\r\n}*/\r\n  changeDateTestAnneeMois(){\r\n\r\n    if(!this.valueAnnee || this.valueAnnee==null){\r\n      this.valueMois=null;\r\n    }\r\n    if(!this.valueMois || this.valueMois==null){\r\n      this.valueJour = null;\r\n    }\r\n\r\n    this.calculeDateMoisList();\r\n    this.calculeDateJourList();\r\n\r\n\r\n    this.changeDateTest();\r\n\r\n  }\r\n  calculeDateMoisList(){\r\n    if(this.valueAnnee == null ){\r\n      this.moisList = [];\r\n    }else{\r\n      this.moisList = [{ id: 1, libelle: \"Janvier\" },\r\n      { id: 2, libelle: \"Février\" },\r\n      { id: 3, libelle: \"Mars\" },\r\n      { id: 4, libelle: \"Avril\" },\r\n      { id: 5, libelle: \"Mai\" },\r\n      { id: 6, libelle: \"Juin\" },\r\n      { id: 7, libelle: \"Juillet\" },\r\n      { id: 8, libelle: \"Août\" },\r\n      { id: 9, libelle: \"Septembre\" },\r\n      { id: 10, libelle: \"Octobre\" },\r\n      { id: 11, libelle: \"Novembre\" },\r\n      { id: 12, libelle: \"Décembre\" }];\r\n    }\r\n  }\r\n  calculeDateJourList(){\r\n    this.jourList = [];\r\n\r\n    if(this.valueAnnee != null && this.valueAnnee>0 && this.valueMois !=null && this.valueMois>0){\r\n      let d:Date = new Date(this.valueAnnee,this.valueMois-1,1);\r\n      let d2:Date=new Date(d.getFullYear(),d.getMonth()+1,0);\r\n      let t = Math.round((d2.getTime() - d.getTime())/(1000 * 60 * 60 * 24))+1;\r\n\r\n      //console.log(\"calculeDatemoislist:\"+this.valueAnnee + \"__\" + this.valueMois + \"__\" + this.valueJour);\r\n\r\n      for(let i=1;i<=t;i++) this.jourList.push(i);\r\n      if(this.valueJour!=null && this.valueJour>0 && this.valueJour>t){\r\n        this.valueJour=null;\r\n      }\r\n    }\r\n  }\r\n\r\n  changeDateTest() {\r\n    //console.log(\"test date:\" + this.valueAnnee + \"__\" + this.valueMois + \"__\" + this.valueJour);\r\n    let str = \"\";\r\n    if (this.valueAnnee) str += this.valueAnnee + \"-\";\r\n    else str += \"0000-\";\r\n    if (this.valueMois) str += (this.valueMois > 9 ? this.valueMois : \"0\" + this.valueMois) + \"-\";\r\n    else str += \"00-\";\r\n    if (this.valueJour) str += (this.valueJour > 9 ? this.valueJour : \"0\" + this.valueJour);\r\n    else str += \"00\";\r\n\r\n    //console.log(\"test date str :\" + str);\r\n    console.warn(str);\r\n    \r\n    if(str=='0000-00-00') str = null;\r\n    \r\n\r\n    this.valueChange.emit(str);\r\n    this.actionRetour.emit();\r\n  }\r\n  calculeValueDate2() {\r\n    if (this.value != null) {\r\n      let s = this.value.split(\"-\");\r\n      this.valueAnnee = +s[0];\r\n      this.valueMois = +s[1];\r\n      this.valueJour = +s[2];\r\n      this.calculeDateMoisList();\r\n      this.calculeDateJourList();\r\n    } else {\r\n      this.valueAnnee = null;\r\n      this.valueMois = null;\r\n      this.valueJour = null;\r\n      this.moisList =[];\r\n      this.jourList =[];\r\n    }\r\n  }\r\n\r\n  onChange() {\r\n    this.traitementOnChangeText();\r\n    this.valueChange.emit(this.value);\r\n    this.actionRetour.emit();\r\n  }\r\n  onChange2() {\r\n    this.traitementOnChangeText();\r\n    this.valueChange.emit(this.value);\r\n    this.actionRetour2.emit();\r\n  }\r\n  traitementOnChangeText() {\r\n    if (this.type == 'text ' && this.value != null && this.value.length > this.nbrCharMaxText) {\r\n      this.value = this.value.substr(0, this.nbrCharMaxText);\r\n    }\r\n    if (this.type == 'area ' && this.value != null && this.value.length > this.nbrCharMaxArea) {\r\n      this.value = this.value.substr(0, this.nbrCharMaxArea);\r\n    }\r\n    if (this.value != null) {\r\n      if (this.value.trim().length == 0) this.value = null;\r\n    }\r\n  }\r\n\r\n  onChangeDate(val: any) {\r\n    let str = val.formatted;\r\n    if (str != null && str.length == 0) str = null;\r\n\r\n    this.valueChange.emit(str);\r\n    this.actionRetour.emit();\r\n  }\r\n  onChangeNum() {\r\n    this.traitementOnChangeNum();\r\n    this.valueChange.emit(this.value);\r\n    this.actionRetour.emit();\r\n  }\r\n  onChangeNum2() {\r\n    this.traitementOnChangeNum();\r\n    this.valueChange.emit(this.value);\r\n    this.actionRetour2.emit();\r\n  }\r\n  traitementOnChangeNum() {\r\n    this.siErreurNonNumber = false;\r\n    let tmp = \"\";\r\n    if (this.value != null && this.value.length > this.nbrCharMaxNumber) {\r\n      this.value = this.value.substr(0, this.nbrCharMaxNumber);\r\n    }\r\n    if (this.value != null && this.value.length > 0) {\r\n      for (let i = 0; i < this.value.length; i++) {\r\n        let siCharIsNumber: boolean = false;\r\n        let c: string = this.value.charAt(i);\r\n        for (let j = 0; j <= 9 && !siCharIsNumber; j++) {\r\n          if (j == (+c)) {\r\n            siCharIsNumber = true;\r\n          }\r\n        }\r\n        if (siCharIsNumber || this.siNumeroPisteAvecLettre && i==0 && (c==\"A\" || c==\"B\" || c==\"C\" || c==\"D\")) {\r\n          tmp += c;\r\n        } else {\r\n          this.siErreurNonNumber = true;\r\n        }\r\n      }\r\n      if (tmp.length > 0) {\r\n        this.value = (tmp) + \"\";\r\n      } else {\r\n        this.value = null;\r\n      }\r\n    }\r\n    if(this.value!=null && this.value.length==0) this.value = null;\r\n  }\r\n\r\n  calculeValueDate() {\r\n    if (this.value != null) {\r\n      let s = this.value.split(\"-\");\r\n      this.valueDate = { date: { year: +s[0], month: +s[1], day: +s[2] } };\r\n    } else {\r\n      this.valueDate = null;\r\n    }\r\n  }\r\n\r\n  ngOnInit() {\r\n    //console.log(\"test type:\" + this.type);\r\n    if (this.name == null || this.name.length == 0) {\r\n      this.name = this.id;\r\n    }\r\n    if (this.id == null || this.id.length == 0) {\r\n      this.id = this.name;\r\n    }\r\n    if (this.type == null) this.type = \"text\";\r\n    if (this.type == \"date\") this.calculeValueDate();\r\n    //if(this.siValidationAndNonValid=null) this.siValidationAndNonValid=false;\r\n    //this.other=\"required=\\\"true\\\"\";\r\n    if (this.siRequired == null) this.siRequired = false;\r\n    //console.log(\"str input:\"+this.id+\"__\"+strInput);\r\n    if(this.type == \"numeroPiste\"){\r\n      this.type = \"number\";\r\n      this.siNumeroPisteAvecLettre = true;\r\n    }\r\n  }\r\n\r\n  ngOnChanges() {\r\n    if (this.type == \"date\") this.calculeValueDate();\r\n    if (this.type == \"date2\"){\r\n\r\n      this.calculeValueDate2();\r\n    }\r\n    if(this.type == \"numeroPiste\"){\r\n      this.type = \"number\";\r\n      this.siNumeroPisteAvecLettre = true;\r\n    }\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-input.component.ts","import { Injectable } from '@angular/core';\r\nimport { Headers, Http,RequestOptions  } from '@angular/http';\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport { GeneralService } from './general-service';\r\n\r\nimport { InfoServer } from '../objets/InfoServer';\r\nimport { FilePind } from '../objets/FilePind';\r\n\r\nimport {urlNodeJs,getHeader} from './services.config'\r\n\r\n@Injectable()\r\nexport class FileService{\r\n    //infoServer:InfoServer=null;\r\n    fileExtensionAutorises =['jpg','jpeg','bmp', 'mov', 'ogg', 'mp3','pdf']; //liste des formats possible du fichier; renter les nouvelles possibilités ici\r\n    sizeMaxFileImport=250*1000*1000;//taille maximum d'un fichier 250mo.\r\n\r\n    constructor(private http: Http,private generalService : GeneralService) {}\r\n\r\n    /*\r\n    Méthode de chargement de fichier:\r\n     - un addFile présent dans le component pour ajouter un obj à la liste\r\n     - un onchange lorsque l utilisateur ajout un fichier à l input, dans le compenent avec l'event qui appellera la méthode addNewFileToList: fileInput:filchier, nouveau est l objet qui stocke les info sur le fichier\r\n     - avant le submit: \r\n        - lancer la méthode uploadFileList : liste des nouveaux fichiers à importer, qui fera l'import du fichier dans le repertoire défini dans les configs du server.js (node js)\r\n        - dans le component ajouter la liste des nouveau fichiers à la liste des fichiers déjà présent\r\n     - pendant le submit, la partie nodejs enregistrera le lien entre les fichiers stocker et l objet auxquels ils seront reliés.\r\n     - dans le cas, où un fichier est déja stocké et que l'utilisateur veut le supprimer, partie nodejs\r\n\r\n     voir l exemple dans le component personne detail\r\n    */\r\n    /*\r\n    récupérer les fichiers:\r\n     - lancer la méthode downlaodFile avec le nom du fichier \"nomBase\" (nom de stockage du fichier, unique), la méthode lancera automatiquement le téléchargement du fichier.\r\n    */\r\n\r\n    updateFile(formData: any):Promise<boolean>{\r\n        return this.http.post(urlNodeJs+\"uploadFile\",formData, { headers: getHeader() }).toPromise().then(res=> res.json().success as boolean);\r\n    }\r\n    public uploadFileList(fileNouveauList:FilePind[]) {\r\n        let idTmp=-1;\r\n        if(fileNouveauList==null) return;\r\n        for(let i=0;i<fileNouveauList.length;i++){\r\n            if(!fileNouveauList[i].siDelete && !fileNouveauList[i].siError&&fileNouveauList[i].file!=null&&fileNouveauList[i].nom!=null){\r\n                const formData: any = new FormData();\r\n                const files: Array<File> = fileNouveauList[i].file;\r\n                formData.append(\"uploads\", files[0], fileNouveauList[i].nomBase);\r\n                this.updateFile(formData).then(ret => console.log(\"test ret upload:\"+ret));\r\n\r\n            }\r\n        }\r\n    }\r\n\r\n    \r\n\r\n    getFileExtensionAutorise():string{\r\n        let s=\"\";\r\n        for(let i=0;i<this.fileExtensionAutorises.length;i++){\r\n            s+=this.fileExtensionAutorises[i];\r\n            if(i!=(this.fileExtensionAutorises.length-1)) s+= \", \";\r\n        }\r\n        return s;\r\n    }\r\n    getSizeMaxFileImport():string{\r\n        if(this.sizeMaxFileImport>1000000000){\r\n            return this.sizeMaxFileImport/1000000000 + \" Go\";\r\n        }else if(this.sizeMaxFileImport>1000000){\r\n            return this.sizeMaxFileImport/1000000 + \" Mo\";\r\n        }else if(this.sizeMaxFileImport>1000000){\r\n            return this.sizeMaxFileImport/1000 + \" Ko\";\r\n        }\r\n        return this.sizeMaxFileImport + \" o\";\r\n    }\r\n\r\n    addNewFileToList(fileInput: any,nouveau:FilePind):FilePind{\r\n        let idTmp=-1;\r\n        nouveau.siError=false;\r\n        nouveau.msg=null;\r\n        \r\n        const f: Array<File> = <Array<File>>fileInput.target.files;\r\n        \r\n        if(f[0]['size']>=this.sizeMaxFileImport){\r\n            nouveau.siError = true;\r\n            nouveau.msg = \"Erreur: le fichier est de taille \"+(this.getSizeMaxFileImport())+\" maximum\";\r\n            return;\r\n        }\r\n        let fileName:string=f[0]['name'];\r\n        if(fileName.lastIndexOf('.')>0){\r\n            let extention = fileName.substring(fileName.lastIndexOf('.')+1);\r\n            let siExtentionOk = false;\r\n            for(let i=0;i<this.fileExtensionAutorises.length;i++){\r\n                if(this.fileExtensionAutorises[i].toUpperCase()==extention.toUpperCase()){\r\n                    siExtentionOk = true;\r\n                    continue;\r\n                }\r\n            }\r\n            if(!siExtentionOk){\r\n                nouveau.siError = true;\r\n                nouveau.msg = \"Erreur: ce type de fichier n'est pas autorisé\";\r\n            }\r\n        }else{\r\n            nouveau.siError = true;\r\n            nouveau.msg = \"Erreur: ce type de fichier n'est pas autorisé\";\r\n        }\r\n        if(nouveau.siError){\r\n            return;\r\n        }\r\n        \r\n        nouveau.file=f;\r\n        \r\n        let fileNameBase:string;\r\n        if(fileName.indexOf('.')>=0){\r\n            fileNameBase = fileName.substring(0,fileName.lastIndexOf('.'))+\".\"+new Date().getTime()+(-idTmp)+fileName.substring(fileName.lastIndexOf('.'));\r\n        }else{\r\n            fileNameBase = fileName + new Date().getTime()+(-idTmp);\r\n        }\r\n        nouveau.nom=fileName;\r\n        nouveau.nomBase=fileNameBase;\r\n        \r\n        return nouveau;\r\n    }\r\n\r\n    downlaodFile(nomBase:string){\r\n        let url = window.location.href;\r\n        let tmp = url.substring(0,url.indexOf('#'))+\"file\"+\"/\"+nomBase;\r\n        window.open(tmp);\r\n        \r\n\r\n        /*\r\n        if(this.infoServer!=null){\r\n            //window.open(\"http://\"+this.infoServer.host+\":\"+this.infoServer.port+this.infoServer.repertoireStockageFile+nomBase);\r\n            window.open(tmp);\r\n        }else{\r\n            this.generalService.getPindInfoServer().then(res => {\r\n                this.infoServer=res;\r\n                //window.open(\"http://\"+res.host+\":\"+res.port+res.repertoireStockageFile+nomBase);\r\n                window.open(tmp);\r\n            })\r\n        }*/\r\n        \r\n  }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/file-service.ts","import { Component, EventEmitter, Input, Output,OnInit } from '@angular/core';\r\n\r\nlet labelNonValidationStr = '<label for=\"{{forLabel}}\" class=\"{{classLabel}}\">{{valueLabel}}</label>';\r\nlet nonValidationMode = '<div class=\"col-lg-12\">'+labelNonValidationStr+'</div>';\r\nlet labelVidationStr = '<label for=\"{{forLabel}}\" class=\"  {{classLabel}}\">{{valueLabel}}</label>';\r\nlet validationMode1 = '<div class=\"col-lg-3 {{classCheckBox}}\">'\r\n  +' <input type=\"checkbox\" class=\"form-control\" id=\"{{idCheckBox}}\" name=\"{{nameCheckBox}}\" [(ngModel)]=\"valueCheckBox2\" (change)=\"onChangeCheckbox()\" >'\r\n  +' </div>'\r\n  +' <div class=\"col-lg-9\">'+labelVidationStr+'</div>';\r\nlet validationMode2 = '<div class=\"col-lg-1 {{classCheckBox}}\">'\r\n  +' <input type=\"checkbox\" class=\"form-control\" id=\"{{idCheckBox}}\" name=\"{{nameCheckBox}}\" [(ngModel)]=\"valueCheckBox2\" (change)=\"onChangeCheckbox()\" >'\r\n  +' </div>'\r\n  +' <div class=\"col-lg-11\">'+labelVidationStr+'</div>';\r\nlet validationMode3 = '<div class=\"col-lg-4 {{classCheckBox}}\">'\r\n  +' <input type=\"checkbox\" class=\"form-control\" id=\"{{idCheckBox}}\" name=\"{{nameCheckBox}}\" [(ngModel)]=\"valueCheckBox2\" (change)=\"onChangeCheckbox()\" >'\r\n  +' </div>'\r\n  +' <div class=\"col-lg-8\">'+labelVidationStr+'</div>';\r\n  \r\n/*\r\nlet html:string = '<div class=\"row {{checkBoxClassColor}}\" *ngIf=\\\"siValidationMode && !siAllLigne\\\">'+validationMode1+'</div>'\r\n  +'<div class=\"row {{checkBoxClassColor}}\"  *ngIf=\\\"siValidationMode && siAllLigne\\\">'+validationMode2+'</div>'\r\n  //+'<div class=\"row {{checkBoxClassColor}}\" *ngIf=\\\"!siValidationMode\\\">'+nonValidationMode+'</div>';\r\n  +'<div class=\"row\" *ngIf=\\\"!siValidationMode\\\">'+nonValidationMode+'</div>';\r\n*/\r\nlet html:string = '<div class=\"row \" *ngIf=\\\"siValidationMode && !siAllLigne\\ && !siPetit\">'+validationMode1+'</div>'\r\n  +'<div class=\"row\"  *ngIf=\\\"siValidationMode && siAllLigne&&!siPetit\\\">'+validationMode2+'</div>'\r\n  //+'<div class=\"row {{checkBoxClassColor}}\" *ngIf=\\\"!siValidationMode\\\">'+nonValidationMode+'</div>';\r\n  +'<div class=\"row\" *ngIf=\\\"!siValidationMode\\\">'+nonValidationMode+'</div>'\r\n  +'<div class=\"row\"  *ngIf=\\\"siValidationMode && siPetit\\\">'+validationMode3+'</div>';\r\n\r\n\r\n@Component({\r\n  selector: 'p-label',\r\n  template: html,\r\n  styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PLabelComponent implements OnInit{\r\n  @Input() valueLabel: string;//obligatoire\r\n  @Input() forLabel: string;//si null : inconnu\r\n  @Input() classLabel: string;//si null : label1\r\n  @Input() siAllLigne: boolean;//si null : false // change le col à 1 au lieu de 3 pour gérer l'espacement\r\n  @Input() siPetit: boolean;//si null : false // change le col à 1 au lieu de 3 pour gérer l'espacement\r\n  @Input() siValidationMode: Object=false; //si null : false; obligatoire pour le mode validation\r\n  @Input() idCheckBox: string;//si null ; prend la valeur du name\r\n  @Input() nameCheckBox: string;//si null : prend la valeur du id // si tout les deux null valuer au hazard\r\n  @Input('valueCheckBox') // si null : false\r\n  set valueCheckBox(value: boolean) {\r\n        this.valueCheckBox2 = value;\r\n        if(!value){\r\n          this.checkBoxClassColor = \"classRed\";\r\n        }else{\r\n          this.checkBoxClassColor = \"\";\r\n        }\r\n    }\r\n  @Input() classCheckBox: string;// si null : marginCheckBoxValidation1\r\n\r\n  @Output() valueCheckBoxChange= new EventEmitter<boolean>();\r\n  @Output() actionRetour= new EventEmitter<void>();\r\n\r\n  valueCheckBox2:boolean;\r\n  checkBoxClassColor:string=\"\";\r\n\r\n  onChangeCheckbox(){\r\n    this.valueCheckBoxChange.emit(this.valueCheckBox2);\r\n    this.actionRetour.emit();\r\n  }\r\n\r\n  ngOnInit(){\r\n      if(this.classLabel == null) this.classLabel = \"label1\";\r\n      if(this.classCheckBox == null) this.classCheckBox = \"marginCheckBoxValidation1\";\r\n      \r\n      if(this.forLabel==null) this.forLabel = \"inconnu\";\r\n      if(this.siValidationMode==null) this.siValidationMode = false;\r\n      if(this.idCheckBox==null) this.idCheckBox = this.nameCheckBox;\r\n      if(this.nameCheckBox==null) this.nameCheckBox = this.idCheckBox;\r\n      if(this.idCheckBox == null && this.nameCheckBox == null){\r\n        /*\r\n        let tmp = \"\";\r\n        if(this.valueLabel != null ){\r\n          tmp = this.valueLabel.replace(\" \",\"_\");\r\n        }\r\n        if(this.nameCheckBox!=null){\r\n          tmp = this.nameCheckBox.toString().replace(\" \",\"_\");\r\n        }\r\n        this.idCheckBox = tmp;\r\n        this.nameCheckBox=tmp;\r\n        */\r\n        \r\n      }\r\n      //if(this.valueCheckBox == null) this.valueCheckBox = false;\r\n      if(this.siAllLigne == null) this.siAllLigne = false;\r\n      if(this.siPetit == null) this.siPetit = false;\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-label.component.ts","import { Component, EventEmitter, Input, Output, OnInit } from '@angular/core';\r\n\r\nimport { PersonneService } from '../../services/personnne-service';\r\nimport { ObjSimple } from '../../objets/ObjSimple';\r\n\r\nlet strSpan = \"<div class=\\\"divConsultation\\\"><span *ngIf=\\\"!siInput\\\"  class='inputConsultation'>{{value}}</span></div>\";\r\n//let  strSpan = \"<span >aaaaaaaaaaaaaaaaaaaaaaaaa</span>\";\r\n\r\nlet strInput: string = '<div *ngIf=\\\"siInput\\\">'\r\n  + '<select class=\"form-control  {{classSiNonValid}}\" id={{id}} [(ngModel)]=\"valueId\" (change)=\"changeValue()\" [required]=\"siRequired\" >' // [required]=\"{{siRequired}}\"\r\n  + '    <option [value]=\"\" > </option>'\r\n  + '    <option *ngFor=\"let r of list\" [value]=\"r.id\" >{{r.libelle }}</option>'\r\n  + ' </select>'\r\n  + ' </div>';\r\n\r\nlet html: string = (strSpan + strInput);\r\n\r\n@Component({\r\n  selector: 'p-select',\r\n  template: html,\r\n  styleUrls: ['./p-tag.component.css']\r\n})\r\n\r\nexport class PSelectComponent implements OnInit {\r\n\r\n  @Input() id: string;\r\n\r\n  @Input() value: string;\r\n  @Input() valueId: number;\r\n\r\n  @Input() list: ObjSimple[];\r\n  @Input('typeObject')\r\n  set typeObject(type:string){\r\n    if(type == 'TYPE_ROLE'){\r\n      this.personneService.getRoleList().then(res => this.list=res);\r\n    } else if(type == 'GROUPE_LIST'){\r\n      this.personneService.getGroupeList().then(ret => this.list = ret);\r\n    } else if(type == 'CIVILITE'){\r\n      this.personneService.getCiviliteList().then(ret => this.list = ret);\r\n    }\r\n  }\r\n  \r\n  @Input() siInput: boolean;\r\n  @Input('siValidationAndNonValid')\r\n  set siValidationAndNonValid(res: boolean) {\r\n    this.classSiNonValid = \"\";\r\n    if (res) {\r\n      this.classSiNonValid = \"validationColor\";\r\n    } else {\r\n\r\n    }\r\n  }\r\n  @Input() siRequired: boolean;\r\n\r\n  @Output() valueChange = new EventEmitter<string>();\r\n  @Output() valueIdChange = new EventEmitter<number>();\r\n  @Output() actionRetour = new EventEmitter<void>();\r\n\r\n  classSiNonValid: string = null;\r\n\r\n  constructor(\r\n    private personneService : PersonneService\r\n  ) { }\r\n\r\n  ngOnInit() {\r\n    if (this.siInput == null) this.siInput = true;\r\n    if (this.siRequired == null) this.siRequired = false;\r\n  }\r\n\r\n  changeValue() {\r\n    for(let i=0;i<this.list.length;i++){\r\n      if(this.list[i].id == this.valueId){\r\n        this.value = this.list[i].libelle;\r\n      }\r\n    }\r\n    if(this.valueId!=null && this.valueId.toString().length==0) this.valueId = null;\r\n    this.valueChange.emit(this.value);\r\n    this.valueIdChange.emit(this.valueId);\r\n    this.actionRetour.emit();\r\n  }\r\n\r\n  \r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/tag/p-select.component.ts","import { Component,OnInit } from '@angular/core';\r\nimport { ActivatedRoute,Params, Router }   from '@angular/router';\r\n\r\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\r\n\r\n\r\nimport { LieuService } from '../services/lieu-service';\r\nimport { GeneralService } from '../services/general-service';\r\n\r\nimport { LieuApi } from '../objets/LieuGeoApi';\r\nimport { LieuOSM } from '../objets/LieuOSM';\r\n\r\nimport { ObjSimple,ObjSimpleTest } from '../objets/ObjSimple';\r\n\r\n@Component({\r\n    \r\n selector: 'test-page',\r\n templateUrl: '../vue/test-page.component.html',\r\n providers : [GeneralService]\r\n})\r\n\r\n\r\nexport class TestPageComponent implements OnInit {\r\n  \r\n  lieuList:LieuApi[]=[];\r\n  lieuList2:LieuOSM[]=[];\r\n\r\n  testList:ObjSimple[]=[{id:1, value:\"One\",code:\"\",libelle:\"\"}, {id:2, value:\"Two\",code:\"\",libelle:\"\"}, {id:3, value:\"Three\",code:\"\",libelle:\"\"}, {id:4, value:\"Four\",code:\"\",libelle:\"\"}];\r\n  resTestList:ObjSimple=new ObjSimple();\r\n\r\n  testNom:string;\r\n\r\n  resNumber:number;\r\n  //test:ObjSimple= {\"id\":10,\"libelle\":\"lib\",\"code\":\"co\",\"value\":\"val\"};\r\n  test:ObjSimpleTest= {\"toto\":new Object(\"ABCDE\")};\r\n\r\n  testRes :ObjSimple = new ObjSimple();\r\n\r\n  /*\r\n  detail:Groupe;\r\n\r\n  statutGroupeList:ObjSimple[]=[];\r\n  genreList:ObjSimple[]=[];\r\n  anneeList:number[]=[];\r\n  lieuList:Lieu[]=[];\r\n\r\n  siNomUnique=true;\r\n  //siGenreInconnu=false;\r\n  siAnneeCreationOk=true;\r\n  siAnneeFinOk=true;\r\n  siAnneeDebAvantFin=false;\r\n*/\r\n  constructor(\r\n    private router:Router,\r\n    private route: ActivatedRoute,\r\n    private lieuService : LieuService,\r\n    private generaleService : GeneralService,\r\n    private _sanitizer: DomSanitizer\r\n  ){};\r\n\r\n  changeList(event:any){\r\n    console.log(\"ici\"+event);\r\n    //let val =(<HTMLInputElement>event.target).value;\r\n    let val = event;\r\n    console.log(\"ici2\"+val);\r\n    let d = new Date().getTime();\r\n    //this.testList=[{id:d, value:\"One2\",code:\"\",libelle:\"\"}, {id:22, value:\"Two2\",code:\"\",libelle:\"\"}, {id:32, value:\"Three2\",code:\"\",libelle:\"\"}, {id:42, value:\"Four2\",code:\"\",libelle:\"\"}];\r\n    \r\n    \r\n    if(val!=null && val.length>0){\r\n      this.generaleService.getTestAutoComplete(val).then(res => {\r\n        this.testList=res;\r\n        console.log(\"taille retour:\"+res.length);\r\n      });\r\n    }\r\n    \r\n  }\r\n\r\n  renderHero = (data: any) : SafeHtml => {\r\n    let html = `<b style='float:left;width:100%'>${data.name}</b>\r\n                \r\n                `;\r\n\r\n    return this._sanitizer.bypassSecurityTrustHtml(html);\r\n  };\r\n\r\n\r\n  onChangeValueRet(val:Object){\r\n    this.test.toto = val;\r\n  }\r\n/*\r\nhandleUserUpdated(user) {\r\n  console.log(\"iciciciicic:\"+user);\r\n    this.test.toto= user;\r\n  }*/\r\n  \r\n\r\n  ngOnInit(): void {\r\n    let d = new Date().getTime();\r\n    this.generaleService.getTestAutoComplete(this.resTestList.value).then(res => {\r\n        this.testList=res;\r\n        console.log(\"taille retour:\"+res.length);\r\n      });\r\n    \r\n  } \r\n\r\n  \r\n\r\n  testLieu(){\r\n\r\n    /*this.lieuService.getLieuApi(\"pa\").then(res =>  {\r\n      this.lieuList=res;\r\n      let d3 = new Date().getTime();\r\n      console.log(\"temp api gouv:\"+(d3-d)/1000); \r\n    });*/\r\n    /*\r\n    this.lieuService.getLieuApiByCodeDepartement(75).then(res =>  {\r\n      this.lieuList=res;\r\n      let d3 = new Date().getTime();\r\n      console.log(\"temp api gouv:\"+(d3-d)/1000); \r\n    });*/\r\n    \r\n    /*this.lieuService.getLieuOSM(\"paris\").then(res=>{\r\n      this.lieuList2=res;\r\n      let d2 = new Date().getTime();\r\n      console.log(\"temp osm:\"+(d2-d)/1000); \r\n    });*/\r\n/*\r\n    this.lieuService.getLieuByCity(\"paris\").then(res=>{\r\n      this.lieuList2=res;\r\n      let d2 = new Date().getTime();\r\n      console.log(\"temp osm:\"+(d2-d)/1000); \r\n    });*/\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/test-page.component.ts","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nimport { \r\n  Component, Input\r\n} from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'my-last-name',\r\n  template: `\r\n      <h2>Last name: {{_name}} ({{ name }})</h2>\r\n  `,\r\n})\r\nexport class OtherChildComponent  {\r\n  @Input() name: string;\r\n  constructor() {}\r\n  \r\n  \r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/test.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n//import { Location } from '@angular/common';\r\nimport 'rxjs/add/operator/switchMap';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\nimport { IDetail } from './IDetail.component';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n//import { EntrepriseInterneList } from '../object/EntrepriseInterne';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n//import { PropositionService } from '../services/proposition.service';\r\nimport { Utils } from '../services/utils.service';\r\n\r\n@Component({\r\n\r\n  selector: 'utilisateur-detail',\r\n  templateUrl: '../vue/utilisateur-detail.component.html'\r\n})\r\n\r\nexport class UtilisateurDetailComponent extends AbstractDetailComponent implements OnInit, IDetail {\r\n  utilisateurDetail: UtilisateurDetail;\r\n  mode: string;\r\n  password2: string;\r\n  typeProfilList: ObjSimple[];\r\n  // entrepriseInterneList:EntrepriseInterneList[];\r\n\r\n  siLoginUnique: boolean = true;\r\n  siMdpChangeOk: boolean = null;\r\n  siNomPrenomUnique: boolean = true;\r\n  //siTrigrammeUnique: boolean = true;\r\n  //trigrammeOld: string;\r\n  //siTrigrammeSaisiManuel: boolean = false;\r\n\r\n\r\n  constructor(\r\n    protected utilisateurService: UtilisateurService,\r\n    //  private propositionService : PropositionService,\r\n    private util: Utils,\r\n    protected route: ActivatedRoute,\r\n    protected router: Router\r\n  ) { super(router, route, null, utilisateurService) };\r\n\r\n  checkSiDroitDAccesInitPage(): boolean {\r\n    return this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR;\r\n  }\r\n  checkSiDroitDAccesOnSubmit(): boolean {\r\n    return this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR;\r\n  }\r\n\r\n\r\n\r\n  getCreateurId(): number {\r\n    return null;\r\n  }\r\n  /*\r\n    getSiValidationPossible(): boolean {\r\n      return false;\r\n    }*/\r\n  /*\r\ncheckSiCreateurPage(): boolean {\r\n  return true;\r\n}\r\ncheckSiModificateurPage(): Promise<boolean> {\r\n  return;\r\n}*/\r\n  getSiAllValid(): boolean {\r\n    return false;\r\n  }\r\n\r\n  setDetailId(id: number) {\r\n    if (this.utilisateurDetail == null) this.utilisateurDetail = { utilisateurId: null, nom: null, prenom: null, email: null, password: null, login: null, siSupprimable: true, password2: null, profil: null, siPasswordTmp: false, profilLibelle: null, timeOutDerniereMouvement: null, siDelete: false };\r\n    if (id <= 0) this.utilisateurDetail.utilisateurId = null;\r\n    else this.utilisateurDetail.utilisateurId = id;\r\n  };\r\n\r\n  initById() {\r\n    if (this.utilisateurDetail.utilisateurId != null) {\r\n      this.utilisateurService.getUtilisateur(this.utilisateurDetail.utilisateurId).then(res => {\r\n\r\n        if (res == null) {\r\n          this.redirectToErrorPage();\r\n          return;\r\n        }\r\n        this.utilisateurDetail = res;\r\n        this.aftherInitById();\r\n      });\r\n    } else {\r\n      //erreur\r\n    }\r\n\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n    this.utilisateurService.getTypeProfilList().then(res => this.typeProfilList = res);\r\n  }\r\n\r\n  checkSiFormulaireValide(): boolean {\r\n    return true;\r\n  }\r\n  validationFormulaire(): boolean {\r\n    if(!this.siLoginUnique || this.utilisateurDetail.login==null || this.utilisateurDetail.login.length==0 ) return false;\r\n\r\n    return true;\r\n  }\r\n  getDetailObj(): any {\r\n    return this.utilisateurDetail;\r\n  }\r\n  createOrUpdate() {\r\n    if (this.utilisateurDetail.utilisateurId == null) {\r\n      this.utilisateurDetail.password = this.utilisateurService.generatePassword();\r\n      this.utilisateurDetail.siPasswordTmp = true;\r\n      this.utilisateurService.createUtilisateur(this.utilisateurDetail.nom, this.utilisateurDetail.prenom, this.utilisateurDetail.email, this.util.cryptePwd(this.utilisateurDetail.password), this.utilisateurDetail.login, this.utilisateurDetail.siSupprimable, this.utilisateurDetail.siPasswordTmp, this.utilisateurDetail.profil).then(retId => {\r\n        //this.utilisateurDetail.utilisateurId=retId,\r\n        //this.utilisateurDetail.utilisateurId=retId,\r\n        this.utilisateurService.sendMailNewPassword(this.utilisateurDetail.email, this.utilisateurDetail.password, this.utilisateurDetail.login);\r\n        //this.mode='CONSULTATION',\r\n        //this.utilisateurService.getUtilisateur(retId).then(UtilisateurList =>{this.utilisateurDetail=UtilisateurList});\r\n        this.createOrUpdateResultat(retId);\r\n\r\n      });\r\n    } else {\r\n      this.utilisateurService.updateUtilisateur(this.utilisateurDetail.utilisateurId, this.utilisateurDetail.nom, this.utilisateurDetail.prenom, this.utilisateurDetail.email, this.utilisateurDetail.password, this.utilisateurDetail.login, this.utilisateurDetail.siSupprimable, this.utilisateurDetail.siPasswordTmp, this.utilisateurDetail.profil).then(retId =>\r\n      //{this.mode='CONSULTATION',\r\n      //this.utilisateurService.getUtilisateur(this.utilisateurDetail.utilisateurId).then(UtilisateurList =>{\r\n      //  this.utilisateurDetail=UtilisateurList;\r\n      {\r\n        this.createOrUpdateResultat(retId)//;});\r\n      });\r\n    }\r\n  }\r\n\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    /*\r\n    this.checkSiValidAll();\r\n    if(this.utilisateurDetail.siArtisteValidAll){\r\n      this.siAllValid =true;\r\n    }*/\r\n  }\r\n\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n  }\r\n\r\n  /*\r\n    onSubmit() {\r\n     /** if(this.utilisateurDetail.profil != 'DIRECTION_AGENCE'){\r\n        this.utilisateurDetail.entrepriseInterneId=null;\r\n      }\r\n      \r\n    }*/\r\n\r\n  /*\r\n    getInfoRequest():void{\r\n      this.route.params.subscribe(params => {\r\n         this.utilisateurDetail.utilisateurId = +params['id']; // (+) converts string 'id' to a number\r\n         this.mode = params['mode'];\r\n      });\r\n    }*/\r\n  /*\r\n    ngOnInit(): void {\r\n      this.getInfoRequest();\r\n  \r\n      \r\n      \r\n  \r\n     // this.propositionService.getEntrepriseInterneList().then(res => {this.entrepriseInterneList=res});\r\n  \r\n      \r\n      this.password2=null;\r\n      \r\n      this.siLoginUnique=true;\r\n      this.siMdpChangeOk=null;\r\n      this.siNomPrenomUnique=true;\r\n      this.siTrigrammeUnique=true;\r\n      this.trigrammeOld=null;\r\n      this.siTrigrammeSaisiManuel=false;\r\n    } */\r\n\r\n  nouveauMotDePasse() {\r\n    this.utilisateurDetail.password = this.utilisateurService.generatePassword();\r\n    this.utilisateurDetail.siPasswordTmp = true;\r\n    this.utilisateurService.updateUtilisateurPassword(this.utilisateurDetail.utilisateurId, this.util.cryptePwd(this.utilisateurDetail.password), this.utilisateurDetail.siPasswordTmp).then(ret => {\r\n      this.utilisateurService.sendMailNewPassword(this.utilisateurDetail.email, this.utilisateurDetail.password, this.utilisateurDetail.login).then(siSucces => {\r\n        this.siMdpChangeOk = siSucces;\r\n        console.log(\"sisucces mail : \"+siSucces);\r\n      })\r\n    });\r\n  }\r\n\r\n\r\n  checkLoginUnique() {\r\n    this.utilisateurService.checkLoginUnique(this.utilisateurDetail.utilisateurId, this.utilisateurDetail.login).then(ret => { this.siLoginUnique = ret });\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/utilisateur-detail.component.ts","\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\nimport { PersonneService } from '../services/personnne-service';\r\nimport { Utils } from '../services/utils.service';\r\n\r\nimport { UtilisateurInscription } from '../objets/UtilisateurInscription';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\n\r\n\r\n/*\r\nimport { Login } from '../objets/login';\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\n\r\n\r\n*/\r\n\r\n@Component({\r\n\r\n  selector: 'utilisateur-inscription',\r\n  templateUrl: '../vue/utilisateur-inscription.component.html'\r\n})\r\n\r\nexport class UtilisateurInscriptionComponent implements OnInit {\r\n  detail: UtilisateurInscription;\r\n\r\n  //civiliteList: ObjSimple[] = [];\r\n  siLoginUnique: boolean = true;\r\n\r\n  siInscriptionOk: boolean = false;\r\n  siSubmit: boolean = false;\r\n\r\n  constructor(\r\n    private utilisateurService: UtilisateurService,\r\n    private personneService: PersonneService,\r\n    private utils: Utils,\r\n    private router: Router\r\n  ) { };\r\n\r\n  onSubmit() {\r\n    if (this.siLoginUnique) {\r\n      this.siSubmit = true;\r\n      this.utilisateurService.createUtilisateur(this.detail.nom, this.detail.prenom, this.detail.email, this.utils.cryptePwd(this.detail.password), this.detail.login, true, false, 'GRAND_PUBLIC').then(res => {\r\n        if (res > 0) {\r\n          this.siInscriptionOk = true;\r\n          setTimeout((router: Router) => {\r\n            this.router.navigate(['login']);\r\n          }, 5000);\r\n        } else {\r\n          this.siInscriptionOk = false;\r\n        }\r\n      })\r\n    }\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.detail = new UtilisateurInscription();\r\n    //this.personneService.getCiviliteList().then(res => this.civiliteList = res);\r\n    this.siSubmit = false;\r\n\r\n  }\r\n  checkLoginUnicite() {\r\n    if (this.detail.login != null && this.detail.login.length > 0) {\r\n      this.utilisateurService.checkLoginUnique(null, this.detail.login).then(res => this.siLoginUnique = res);\r\n    }\r\n  }\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/utilisateur-inscription.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\n\r\nimport { AbstractSearchComponent } from './abstract-search.compenent';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nimport { UtilisateurList } from '../objets/utilisateurList';\r\nimport { ObjSimple } from '../objets/ObjSimple';\r\nimport { UtilisateurSearch } from '../objets/UtilisateurSearch';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\n@Component({\r\n  selector: 'utilisateur-list',\r\n  templateUrl: '../vue/utilisateur-list.component.html'\r\n})\r\n\r\nexport class UtilisateurListComponent extends AbstractSearchComponent implements OnInit {\r\n  //utilisateurList : UtilisateurList[] = [];\r\n  rows: any[] = [];\r\n  typeProfilList: ObjSimple[];\r\n  search: UtilisateurSearch;\r\n  // aucunResultat:boolean=false;\r\n\r\n  constructor(\r\n    protected utilisateurService: UtilisateurService, protected router: Router\r\n  ) { super(router) };\r\n\r\n  checkSiDroitDAccesListPage(): boolean {\r\n    return this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR;;\r\n  }\r\n  toDelete(uti: UtilisateurList) {\r\n    if (confirm(\"Êtes-vous sûr de supprimer l'utilisateur :\" + uti.nom + \" \" + uti.prenom)) {\r\n      this.utilisateurService.deleteUtilisateur(uti.utilisateurId).then(siSuccess => {\r\n        if (siSuccess) {\r\n          this.rows.splice(this.rows.indexOf(uti));\r\n          //delete[this.rows.indexOf(uti)];\r\n        }\r\n      });\r\n    }\r\n  }\r\n\r\n\r\n  onSubmit() {\r\n    super.onSubmit();\r\n    this.utilisateurService.getUtilisateurSearch(this.search.nom, this.search.profilCode).then(list => {/*this.utilisateurList=UtilisateurList,*/\r\n      this.rows = list; this.aucunResultat = (list == null || list.length == 0)\r\n    });\r\n\r\n  }\r\n  reset(){\r\n    this.search = new UtilisateurSearch();\r\n    //this.rows = [];\r\n    this.onSubmit();\r\n  }\r\n\r\n  initPageSearch(): void {\r\n    this.search = new UtilisateurSearch();\r\n    //this.getUtilisateurList();\r\n    this.utilisateurService.getTypeProfilList().then(res => this.typeProfilList = res);\r\n    this.sorting.column = \"nom\";\r\n  }\r\n  gotoDetail(utilisateur: UtilisateurList): void {\r\n    this.router.navigate(['/utilisateurDetaila', utilisateur.utilisateurId, \"CONSULTATION\"]);\r\n  }\r\n  /*getResultatIdByRow(row: UtilisateurList): number {\r\n    return null;\r\n  }*/\r\n  getModeRedirectionDetail(idSelect: number): string {\r\n    return \"MODIFICATION\"\r\n  }\r\n  newUti() {\r\n    this.router.navigate(['/utilisateurDetaila', 0, \"CREATION\"]);\r\n  }\r\n\r\n\r\n  /*    columns: any[] = [\r\n      {\r\n        display: 'Nom',//nom colonne\r\n        variable: 'nom',//variable des rows\r\n        filter: 'text' //number, text, date, etc.\r\n      },\r\n      {\r\n        display: 'Prénom',\r\n        variable: 'prenom',\r\n        filter: 'text'\r\n      },\r\n      {\r\n        display: 'Mail',\r\n        variable: 'email',\r\n        filter: 'text'\r\n      },\r\n      {\r\n        display: 'Login',\r\n        variable: 'login',\r\n        filter: 'text'\r\n      },\r\n      {\r\n        display: 'Profil',\r\n        variable: 'profilLibelle',\r\n        filter: 'text',\r\n        action:true,\r\n        url:'/utilisateurDetaila/',\r\n        mode:'/MODIFICATION'\r\n      }\r\n    ];*/\r\n\r\n\r\n\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/utilisateur-list.component.ts","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { Location } from '@angular/common';\r\nimport 'rxjs/add/operator/switchMap';\r\n\r\nimport { AbstractDetailComponent } from './AbstractDetail.component';\r\n\r\n\r\nimport { UtilisateurDetail } from '../objets/UtilisateurDetail';\r\n\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\nimport { Utils } from '../services/utils.service';\r\nimport { FileService } from '../services/file-service';\r\n\r\n@Component({\r\n  selector: 'utilisateur-mon-compte',\r\n  templateUrl: '../vue/utilisateur-mon-compte.component.html'\r\n})\r\n\r\nexport class UtilisateurMonCompteComponent extends AbstractDetailComponent implements OnInit {\r\n  utilisateurDetail: UtilisateurDetail = { utilisateurId: null, nom: null, prenom: null, email: null, password: null, login: null, siSupprimable: true, password2: null, profil: null, siPasswordTmp: false, profilLibelle: null, timeOutDerniereMouvement: null, siDelete: false };\r\n  password2: string;\r\n\r\n  siLoginUnique: boolean = true;\r\n  siMdpChangeOk: boolean = null;\r\n  siNomPrenomUnique: boolean = true;\r\n  passwordCrypteOld: string;\r\n\r\n  siCreationApresCompteTemporaire: boolean = false;\r\n\r\n  constructor(\r\n    protected utilisateurService: UtilisateurService,\r\n    private utils: Utils,\r\n    protected route: ActivatedRoute,\r\n    protected fileService: FileService,\r\n    protected router: Router\r\n  ) { super(router, route, fileService, utilisateurService) };\r\n\r\n\r\n  getInfoRequest(): void {\r\n    let session = JSON.parse(localStorage.getItem(\"userSession\"));\r\n    if (session != null) {\r\n      this.utilisateurDetail.utilisateurId = +(session).utilisateurId;\r\n    }\r\n\r\n  }\r\n  initPage() {\r\n    this.initPageVariable();\r\n    this.initById();\r\n  }\r\n  checkSiDroitDAccesInitPage() {\r\n    return true;\r\n  }\r\n  checkSiDroitDAccesOnSubmit() {\r\n    return true;\r\n  }\r\n\r\n  setDetailId(id: number) {\r\n    if (this.utilisateurDetail == null) this.utilisateurDetail = { utilisateurId: null, nom: null, prenom: null, email: null, password: null, login: null, siSupprimable: true, password2: null, profil: null, siPasswordTmp: false, profilLibelle: null, timeOutDerniereMouvement: null, siDelete: false };\r\n  };\r\n  getDetailObj(): any {\r\n    return this.utilisateurDetail;\r\n  }\r\n  getCreateurId(): number {\r\n    return null;\r\n  }\r\n\r\n  initById() {\r\n    if (this.utilisateurDetail.utilisateurId != null) {\r\n      this.utilisateurService.getUtilisateur(this.utilisateurDetail.utilisateurId).then(res => {\r\n        this.utilisateurDetail = res;\r\n        this.aftherInitById();\r\n\r\n\r\n      });\r\n\r\n\r\n\r\n    }\r\n  }\r\n  aftherInitById() {\r\n    super.aftherInitById();\r\n    if (this.utilisateurDetail == null || this.utilisateurDetail.profil == 'PUBLIC_NON_CONNECTE') {\r\n      let id: number = -1;\r\n      if (this.utilisateurDetail != null) id = this.utilisateurDetail.utilisateurId;\r\n\r\n      this.utilisateurDetail = { utilisateurId: id, nom: null, prenom: null, email: null, password: null, login: null, siSupprimable: true, password2: null, profil: 'GRAND_PUBLIC', siPasswordTmp: false, profilLibelle: null, timeOutDerniereMouvement: null, siDelete: false };\r\n      this.siCreationApresCompteTemporaire = true;\r\n    } else {\r\n      this.utilisateurDetail.password = null;\r\n      this.utilisateurDetail.password2 = null;\r\n      this.passwordCrypteOld = null;\r\n    }\r\n    this.password2 = null;\r\n\r\n    this.siLoginUnique = true;\r\n    this.siMdpChangeOk = null;\r\n    this.siNomPrenomUnique = true;\r\n  }\r\n\r\n  initPageVariable() {\r\n    super.initPageVariable();\r\n\r\n  }\r\n  checkSiFormulaireValide(): boolean { return true }\r\n\r\n  validationFormulaire(): boolean { return true }\r\n\r\n  createOrUpdate() {\r\n    if (this.siLoginUnique) {\r\n      this.utilisateurDetail.password = this.utils.cryptePwd(this.utilisateurDetail.password);\r\n      if (this.utilisateurDetail.utilisateurId == null || this.utilisateurDetail.utilisateurId <= 0) {\r\n        this.utilisateurService.createUtilisateur(this.utilisateurDetail.nom, this.utilisateurDetail.prenom, this.utilisateurDetail.email, this.utilisateurDetail.password, this.utilisateurDetail.login, this.utilisateurDetail.siSupprimable, this.utilisateurDetail.siPasswordTmp, this.utilisateurDetail.profil).then(retId => {\r\n          this.createOrUpdateResultat(retId);\r\n        })\r\n      } else {\r\n        this.utilisateurService.updateUtilisateur(this.utilisateurDetail.utilisateurId, this.utilisateurDetail.nom, this.utilisateurDetail.prenom, this.utilisateurDetail.email, this.utilisateurDetail.password, this.utilisateurDetail.login, this.utilisateurDetail.siSupprimable, this.utilisateurDetail.siPasswordTmp, this.utilisateurDetail.profil).then(retId => {\r\n          this.createOrUpdateResultat(this.utilisateurDetail.utilisateurId);\r\n\r\n        });\r\n      }\r\n    }\r\n  }\r\n  createOrUpdateResultat(ret: number) {\r\n    super.createOrUpdateResultat(ret);\r\n    this.utilisateurService.getUtilisateur(ret).then(utilisateurList => {\r\n      this.utilisateurDetail = utilisateurList;\r\n      this.utilisateurDetail.password = null;\r\n      this.utilisateurDetail.password2 = null;\r\n      localStorage.setItem(\"userSession\", JSON.stringify(utilisateurList));\r\n    });\r\n  }\r\n\r\n  getSiAllValid(): boolean {\r\n    return false;\r\n  }\r\n\r\n\r\n  checkLoginUnique() {\r\n    this.utilisateurService.checkLoginUnique(this.utilisateurDetail.utilisateurId, this.utilisateurDetail.login).then(ret => { this.siLoginUnique = ret });\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/utilisateur-mon-compte.component.ts","import { ObjSimple } from './ObjSimple';\r\nimport { FilePind } from '../objets/FilePind';\r\nimport { AbstractObjets } from './AbstractObjets';\r\n\r\n\r\nexport class EvenementDetail extends AbstractObjets {\r\n\r\n    evenementId: number;\r\n    evenementDate: string;\r\n    evenementDateFin: string;\r\n    //evenementDate2: Object;\r\n    evenementNom:string;\r\n    evenementLieuId: number\r\n    evenementLieuLibelle: string;\r\n    adresse:string;\r\n    subdivisionId: number;\r\n    adresse2: string;\r\n    evenementDesc: string;\r\n    evenementTypeId: number;\r\n    evenementTypeLibelle: string;\r\n    artisteListEvenement:ArtisteEvenement[]=[];\r\n    groupeListEvenement:GroupeEvenement[]=[];\r\n\r\n    lieuCodeInsee:number;\r\n    //partie validation\r\n    \r\n    siEvenementAllValide :boolean=false;\r\n    siDateValide :boolean=false;\r\n    siDateFinValide :boolean=false;\r\n    siNomValide :boolean=false;\r\n    siLieuIdValide :boolean=false;\r\n    siDescriptionValide :boolean=false;\r\n    siTypeEvenementIdValide :boolean=false;\r\n    siSubdivisionIdValide :boolean=false;\r\n    siAdresseIdValide :boolean=false;\r\n    siArtisteAllValide :boolean=false;\r\n    siGroupeAllValide :boolean=false;\r\n    //siFileAllValide   :boolean=false;\r\n\r\n    siTypeEvenementIconnu:boolean=false;\r\n\r\n}\r\n\r\nexport class AbstractEvenementInfo {\r\n    siDelete:boolean=false;\r\n    siChange:boolean=false;\r\n    siValide:boolean=false;\r\n}\r\n/*\r\nexport class Subdivision {\r\n\r\n    idSubdivision : number;\r\n    adresseSubdivision : string;\r\n}*/\r\n\r\nexport class TypeEvenement {\r\n    typeEvenementId : number;\r\n    typeEvenementLibelle : string;\r\n}\r\n\r\nexport class ArtisteEvenement extends AbstractEvenementInfo{\r\n    id: number;\r\n    evenementArtisteGroupeId:number;\r\n    personneId:number;\r\n    personneLibelle:string;\r\n    personneList:ObjSimple[]=[];\r\n    siArtisteEvenementInconnu:boolean=false;\r\n}\r\n\r\nexport class GroupeEvenement extends AbstractEvenementInfo{\r\n    id: number;\r\n    evenementArtisteGroupeId:number;\r\n    groupeId:number;\r\n    groupeLibelle:string;\r\n    groupeList:ObjSimple[]=[];\r\n    siGroupeEvenementInconnu:boolean=false;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/Evenement-detail.ts","export class EvenementSearch{\r\n\r\n    evenementNom:string;\r\n    evenementLieuLibelle: string;\r\n    typeEvenement:string;\r\n    groupeId:number;\r\n    dateEvenementIn:string;\r\n    dateEvenementOut: string;\r\n    personneId: number;\r\n}\r\n\r\nexport class EvenementList{\r\n\r\n    evenementId:number;\r\n    evenementNom:string;\r\n    evenementLieuId: number;\r\n    evenementLieuLibelle: string;\r\n    typeEvenementId:number;\r\n    typeEvenementLibelle:string;\r\n    groupeId:number;\r\n    groupeNom:string;\r\n    dateEvenement: Date;\r\n    personneId:number;\r\n    personneNom:string;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/Evenement-search.ts","import { Headers} from '@angular/http';\r\n\r\nexport const urlNodeJs:string=\"/api/\";\r\n\r\nexport function getHeader():any{\r\n    let token = JSON.parse(localStorage.getItem(\"tokenSession\"));\r\n    if(token == null) return null;\r\n\r\n    let headers = new Headers();\r\n    headers.append('tokenSession', token);\r\n    return headers;\r\n}\r\nexport function getIdTmp():any{\r\n    let headers = new Headers();\r\n    headers.append('idTemporaireSansConnexionName', \"idTemporaireSansConnexion\");\r\n    return headers;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/services.config.ts","\r\n//import { FilePindInObject } from '../objets/FilePind'\r\n//import { LieuOSM } from '../objets/LieuOSM';\r\n\r\nimport { AbstractObjets } from './AbstractObjets';\r\n\r\n//export class Groupe extends FilePindInObject{\r\nexport class Groupe extends AbstractObjets{\r\n\r\n    groupeId:number;\r\n    nom:string;\r\n    /*genreId:number;\r\n    genreLibelle:string;*/\r\n    variantes:Variante[]=[];\r\n    \r\n    anneeCreation:number;\r\n    anneeFin:number;\r\n    lieuOriginId:number;\r\n    lieuOriginLibelle:string;\r\n    lieuOriginCodeInsee:number;\r\n    //lieuOriginOSM:LieuOSM;\r\n    periodeActiviteList:PeriodeActivite[]=[];\r\n    auteurList:AuteurGroupe[]=[];\r\n    description:String;\r\n    dateCreation:Date;\r\n    \r\n \r\n    albumList:AlbumList[]=[];\r\n    genreList:GenreList[]=[];\r\n\r\n\r\n    //partie validation\r\n    siGroupeAllValid:boolean=false;\r\n    siNomValid:boolean=false;\r\n    //siGenreIdValid:boolean=false;\r\n    siGenreAllValid:boolean=false;\r\n    \r\n    siDateCreationValid:boolean=false;\r\n    siDateFinValid:boolean=false;\r\n    siLieuOrigineIdValid:boolean=false;\r\n    siDescriptionValid:boolean=false;\r\n\r\n    siVarianteAllValid:boolean=false;\r\n    siPeriodeActiviteAllValid:boolean=false;\r\n    siAuteurAllValid:boolean=false;\r\n\r\n    \r\n\r\n    //variante\r\n    //periode activite\r\n    //auteur relation\r\n\r\n}\r\n\r\nexport class AbstractGroupeInfo {\r\n    siDelete:boolean=false;\r\n    siChange:boolean=false;\r\n\r\n    siValide:boolean=false;\r\n}\r\n\r\nexport class Variante extends AbstractGroupeInfo  {\r\n    varianteId: number;\r\n    nom: string;\r\n}\r\n\r\nexport class PeriodeActivite extends AbstractGroupeInfo {\r\n    periodeId:number;\r\n    dateDebut:string;\r\n    dateDebut2:Object;\r\n    dateFin:string;\r\n    dateFin2:Object;\r\n    contexte:string;\r\n    siError:boolean=false;\r\n\r\n    siDateDebutsiValide:boolean=false;\r\n    siDateFinsiValide:boolean=false;\r\n    siContexteValide:boolean=false;\r\n}\r\nexport class AuteurGroupe extends AbstractGroupeInfo{\r\n    groupeCompositionArtisteId:number;\r\n    personneId:number;\r\n    \r\n    siAuteurInconnu:boolean=false;\r\n    personneNomPrenom:string;\r\n\r\n    siPersonneIdValide:boolean=false;\r\n\r\n    roles:AuteurGroupeRole[]=[];\r\n    siRoleAllValide:boolean=false;\r\n\r\n    /*id:number;\r\n    groupeCompositionArtisteId:number;\r\n    personneId:number;\r\n    nom:string;\r\n    personneList:ObjSimple[]=[];\r\n    siTjrActifDsGroupe:boolean=false;\r\n    siAuteurInconnu:boolean=false;\r\n\r\n    personneNomPrenom:string;\r\n    typeRoleId:number;\r\n    typeRoleLibelle:string;\r\n    dateDebut:string;\r\n    dateFin:string;\r\n\r\n    siPersonneIdValide:boolean=false;\r\n    siTypeRoleIdValide:boolean=false;\r\n    siDateDebutValide:boolean=false;\r\n    siDateFinValide:boolean=false;*/\r\n}\r\n\r\nexport class AuteurGroupeRole extends AbstractGroupeInfo{\r\n    groupeCompositionArtisteRoleId:number;\r\n    \r\n    typeRoleId:number;\r\n    typeRoleLibelle:string;\r\n    siRoleInconnu:boolean=false;\r\n\r\n    dateDebut:string;\r\n    dateFin:string;\r\n\r\n    siTypeRoleIdValide:boolean=false;\r\n    siDateDebutValide:boolean=false;\r\n    siDateFinValide:boolean=false;\r\n}\r\n\r\nexport class GenreList extends AbstractGroupeInfo{\r\n    groupeGenreId:number;\r\n    \r\n    typeGenreId:number;\r\n    genreLibelle:string;\r\n    \r\n    siGenreInconnu:boolean=false;\r\n}\r\n\r\n\r\nexport class AlbumList{\r\n    albumId:number;\r\n    nom:string;\r\n    annee:number;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/Groupe.ts","\r\nimport { AbstractObjets } from './AbstractObjets'\r\nimport { ObjSimple } from './ObjSimple';\r\n\r\nexport class PersonneDetail extends AbstractObjets{\r\n    personneId:number;\r\n    nom:string;\r\n    prenom:string;\r\n    surnom:string;\r\n    autreNomVariante:PersonneAutreNom[]=[];\r\n    autreNomSurnoms:PersonneAutreNom[]=[];\r\n    dateNaissance:string;\r\n    dateNaissance2:Object;\r\n    dateNaissanceIncertaineDeb:string;\r\n    dateNaissanceIncertaineDeb2:Object;\r\n    dateNaissanceIncertaineFin:string;\r\n    dateNaissanceIncertaineFin2:Object;\r\n    lieuNaissanceId:number;\r\n    lieuNaissanceLibelle:string;\r\n    paysNaissanceId:number;\r\n    paysNaissanceLibelle:string;\r\n    dateMort:string;\r\n    dateMort2:Object;\r\n    dateMortIncertaineDeb:string;\r\n    dateMortIncertaineDeb2:Object;\r\n    dateMortIncertaineFin:string;\r\n    dateMortIncertaineFin2:Object;\r\n    lieuMortId:number;\r\n    lieuMortLibelle:string;\r\n    paysMortId:number;\r\n    paysMortLibelle:string;\r\n    roleList:PersonneRole[]=[];\r\n    //periodeActivite:PersonnePeriodeActivite[]=[];\r\n    lieuActivite:PersonneLieuActivite[]=[];\r\n    biographie:string;\r\n    civiliteId:number;\r\n    civiliteLibelle:string;\r\n\r\n    lieuNaissanceCodeInsee:string;\r\n    lieuMortCodeInsee:string;\r\n\r\n    /*dateCreation:Date;\r\n    createurId:number;\r\n    createurNom:string;\r\n    dateDerniereModification:Date;\r\n    dernierModificateurNom:string;\r\n*/\r\n    siArtisteValidAll:boolean=false;\r\n    siNomValid:boolean=false;\r\n    siPrenomValid:boolean=false;\r\n    siSurnomValid:boolean=false;\r\n    siCiviliteValid:boolean=false;\r\n    siDateNaissancePreciseValid:boolean=false;\r\n    siDateNaissanceIncertaineValid:boolean=false;\r\n    siDateNaissanceIncertaineDebValid:boolean=false;\r\n    siDateNaissanceIncertaineFinValid:boolean=false;\r\n    siLieuNaissanceValid:boolean=false;\r\n    siDateMortPreciseValid:boolean=false;\r\n    siDateMortIncertaineValid:boolean=false;\r\n    siDateMortIncertaineDebValid:boolean=false;\r\n    siDateMortIncertaineFinValid:boolean=false;\r\n    siLieuMortValid:boolean=false;\r\n    siBiographieValid:boolean=false;\r\n\r\n\r\n    siVarianteAllValid:boolean=false;\r\n    siSurnomAllValid:boolean=false;\r\n    siRoleAllValid:boolean=false;\r\n    siLieuActiviteAllValid:boolean=false;\r\n    siFileNonPresentAllValid:boolean=false;\r\n}\r\n\r\n\r\nclass AbstractPersonneInfo{\r\n    personneId:number;\r\n    siDelete:boolean=false;\r\n    siChange:boolean=false;\r\n    siValide:boolean=false;\r\n}\r\n\r\nexport class PersonneAutreNom extends AbstractPersonneInfo{\r\n    autreNomId:number;\r\n    nom:string;\r\n    groupeId:number;\r\n    groupeLibelle:string;\r\n    contexte:string;\r\n    groupeNom:string;\r\n    groupeList:ObjSimple[]=[];\r\n    siGroupeInconnu:boolean=false;\r\n\r\n    \r\n    siNomValide:boolean=false;\r\n    siGroupeValide:boolean=false;\r\n    siContexteValide:boolean=false;\r\n}\r\n\r\nexport class PersonneRole extends AbstractPersonneInfo{\r\n    groupeArtisteId:number;\r\n    groupeArtisteRoleId:number;\r\n    typeRoleId:number;\r\n    typeRoleLibelle:string;\r\n    groupeId:number;\r\n    groupeNom:string;\r\n    dateDebut:string;\r\n    dateFin:string;\r\n\r\n    siTypeRoleIdValide:boolean=false;\r\n    siRoleInconnu:boolean=false;\r\n    siGroupeIdValide:boolean=false;\r\n    siGroupeInconnu:boolean=false;\r\n    siDateDebutValide:boolean=false;\r\n    siDateFinValide:boolean=false;\r\n\r\n}\r\n\r\n/*\r\nexport class PersonneRole extends AbstractPersonneInfo{\r\n    id:number;\r\n    roleId:number;\r\n    typeRoleId:number;\r\n    typeRoleLibelle:string;\r\n    groupeId:number;\r\n    groupeLibelle:string;\r\n    groupeList:ObjSimple[]=[];\r\n    siGroupeInconnu:boolean=false;\r\n\r\n    dateDebut:string;\r\n    dateDebut2:Object;\r\n    dateFin:string;\r\n    dateFin2:Object;\r\n\r\n    siTypeRoleIdValide:boolean=false;\r\n    siGroupeIdValide:boolean=false;\r\n    siDateDebutValide:boolean=false;\r\n    siDateFinValide:boolean=false;\r\n}*/\r\n\r\n/*\r\nexport class PersonnePeriodeActivite extends AbstractPersonneInfo{\r\n    periodeId:number;\r\n    dateDebut:string;\r\n    dateDebut2:Object;\r\n    dateFin:string;\r\n    dateFin2:Object;\r\n\r\n    siDateDebutValide:boolean=false;\r\n    siDateFinValide:boolean=false;\r\n}*/\r\n\r\nexport class PersonneLieuActivite extends AbstractPersonneInfo{\r\n    lieuActiviteId:number;\r\n    lieuId:number;\r\n    lieuLibelle:string;\r\n    codeInsee:number;\r\n    paysId:number;\r\n    paysLibelle:string;\r\n\r\n    //siLieuIdValide:boolean=false;uniquement le siValide dans abstract\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/Personne-detail.ts","export class PersonneSearch{\r\n    nom:string;\r\n    surnom:string;\r\n    typeRole:number;\r\n    groupeId:number;\r\n    dateNaissance:string;\r\n    dateMort:string;\r\n}\r\nexport class PersonneList{\r\n    personneId:number;\r\n    nom:string;\r\n    prenom:string;\r\n    nomArtiste:string;\r\n    surnom:string;\r\n    typeRoleId:number;\r\n    typeRoleLibelle:string;\r\n    groupeId:number;\r\n    groupeNom:string;\r\n    dateNaissance:Date;\r\n    dateMort:Date;\r\n    lieuNaissanceId:number;\r\n    lieuNaissanceLibelle:string;\r\n    \r\n    siFirstLigne:boolean=false;\r\n    siVisible:boolean=false;\r\n    siSousLigneAffiche:boolean=false;\r\n    nbrMemePersonne:number=1;\r\n    //numeroStyle:string=\"0\";\r\n    position:number=0;\r\n\r\n    createurId:number;\r\n    siAllValid:number;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/Personne-search.ts","import { AbstractObjets } from './AbstractObjets';\r\nimport { Album } from './ProductionAlbum';\r\n\r\n\r\nexport class ProductionMorceau extends AbstractObjets {\r\n  morceauId: number;\r\n  titre: string;\r\n  albums: Album[] = [];\r\n  // albumId:number;\r\n  // albumNom:string;\r\n  numeroPisteAlbum: number;\r\n  compositeurs: CompositeurMorceau[] = [];\r\n  dateComposition: string;\r\n  datePremierEnregistrement: string;\r\n  datePremierePublication: string;\r\n  format: number;\r\n  formatStr: string;\r\n  description: string;\r\n  typeTonaliteId: number;\r\n  typeTonnaliteLibelle: string;\r\n  bpm: number;\r\n  structureMorceau: string;\r\n  //organologie:string;\r\n  typeOrganologieId: number;\r\n  typeOrganologieLibelle: string;\r\n  auteurs: AuteurMorceau[] = [];\r\n  groupes: GroupeMorceau[] = [];\r\n  langueId: number;\r\n  langueLibelle: string;\r\n  languePaysNom: string;\r\n  parole: string;\r\n  bibliographie: File;\r\n  notice: File[] = [];\r\n  dateCreation: Date;\r\n\r\n\r\n\r\n  //fileList:FilePind[]=[];\r\n\r\n  siMorceauAllValide: boolean = false;\r\n  siNomValide: boolean = false;\r\n  siDureeValide: boolean = false;\r\n  siParoleValide: boolean = false;\r\n  siTypeTonaliteIdValide: boolean = false;\r\n  siBpmValide: boolean = false;\r\n  siStructureValide: boolean = false;\r\n  siOrganologieValide: boolean = false;\r\n  siLangueIdValide: boolean = false;\r\n  siDescriptionValide: boolean = false;\r\n  siAlbumIdValide: boolean = false;\r\n  siNumeroPisteValide: boolean = false;\r\n  siDateCompositionValide: boolean = false;\r\n  siDatePremierEnregistrementValide: boolean = false;\r\n  siDatePremierePublicationValide: boolean = false;\r\n  siAuteurAllValide: boolean = false;\r\n  siCompositeurAllValide: boolean = false;\r\n  siGroupeAllValide: boolean = false;\r\n}\r\n\r\n\r\nexport class AbstractProductionMorceau {\r\n  siChange: boolean = false;\r\n  siDelete: boolean = false;\r\n  siValide: boolean = false;\r\n}\r\n\r\nexport class CompositeurMorceau extends AbstractProductionMorceau {\r\n  morceauArtisteId: number;\r\n  personneId: number;\r\n  nom: string;\r\n  siCompositeurInconnu: boolean = false;\r\n}\r\n\r\nexport class AuteurMorceau extends AbstractProductionMorceau {\r\n  morceauArtisteId: number;\r\n  personneId: number;\r\n  nom: string;\r\n  //personneList:ObjSimple[]=[];\r\n  siAuteurInconnu: boolean = false;\r\n\r\n  //siMorceauValide:boolean=false;\r\n  siPersonneValide: boolean = false;\r\n}\r\nexport class GroupeMorceau extends AbstractProductionMorceau {\r\n  morceauGroupeId: number;\r\n  groupeId: number;\r\n  nom: string;\r\n  siGroupeInconnu: boolean = false;\r\n  siGroupeValide: boolean = false;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/ProductionMorceau.ts","export class ProductionSearch{\r\n    typeProductionCode:string;\r\n    titreMorceau:string=\"\";\r\n    titreAlbum:string;\r\n    //datePublicationIn:Date;\r\n    //datePublicationOut:Date;\r\n    datePublicationIn:string;\r\n    datePublicationOut:string;\r\n}\r\nexport class ProductionList{\r\n    productionAlbumId:number;\r\n    productionMorceauId:number;\r\n    titreMorceau:string;\r\n    titreAlbum:string;\r\n    datePublication:Date;\r\n    nbrPiste:number;\r\n    numeroPiste:number;\r\n    createurId:number;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/ProductionSearch.ts","export class UtilisateurInscription{\r\n    utilisateurId:number;\r\n    nom:string;\r\n    prenom:string;\r\n    civiliteId:number;\r\n    email:string;\r\n    login:string;\r\n    password:string;\r\n    password2:string;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/UtilisateurInscription.ts","\r\nexport class UtilisateurModification{\r\n    utilisateurId:number;\r\n    dateModification:Date;\r\n    nom:string;\r\n    prenom:string;\r\n    login:string;\r\n    email:string;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/UtilisateurModification.ts","export class UtilisateurSearch{\r\n    nom:string;\r\n    profilCode:string;\r\n    siAdmin:boolean=true;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/objets/UtilisateurSearch.ts","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DatePipe, DecimalPipe } from '@angular/common';\r\n\r\n@Pipe({\r\n  name: 'format'\r\n})\r\nexport class Format implements PipeTransform {\r\n\r\n  datePipe: DatePipe = new DatePipe('fr-FR');\r\n  decimalPipe: DecimalPipe = new DecimalPipe('fr-FR');\r\n\r\n  moisList: any[] = [\r\n    { numero: 1, libelle: \"Janvier\" },\r\n    { numero: 2, libelle: \"Février\" },\r\n    { numero: 3, libelle: \"Mars\" },\r\n    { numero: 4, libelle: \"Avril\" },\r\n    { numero: 5, libelle: \"Mai\" },\r\n    { numero: 6, libelle: \"Juin\" },\r\n    { numero: 7, libelle: \"Juillet\" },\r\n    { numero: 8, libelle: \"Août\" },\r\n    { numero: 9, libelle: \"Septembre\" },\r\n    { numero: 10, libelle: \"Octobre\" },\r\n    { numero: 11, libelle: \"Novembre\" },\r\n    { numero: 12, libelle: \"Décembre\" }\r\n  ];\r\n\r\n  transform(input: string, args: any): any {\r\n    var format = '';\r\n    var parsedFloat = 0;\r\n    var pipeArgs = args.split(':');\r\n    for (var i = 0; i < pipeArgs.length; i++) {\r\n      pipeArgs[i] = pipeArgs[i].trim(' ');\r\n    }\r\n\r\n    switch (pipeArgs[0].toLowerCase()) {\r\n      case 'text':\r\n        return input;\r\n      case 'decimal':\r\n      case 'number':\r\n\r\n        parsedFloat = !isNaN(parseFloat(input)) ? parseFloat(input) : 0;\r\n        format = pipeArgs.length > 1 ? pipeArgs[1] : null;\r\n        return this.decimalPipe.transform(parsedFloat, format);\r\n      case 'percentage':\r\n        parsedFloat = !isNaN(parseFloat(input)) ? parseFloat(input) : 0;\r\n        format = pipeArgs.length > 1 ? pipeArgs[1] : null;\r\n        return this.decimalPipe.transform(parsedFloat, format) + '%';\r\n      case 'date':\r\n      case 'datetime':\r\n        var date = !isNaN(parseInt(input)) ? parseInt(input) : new Date(input);\r\n        format = 'MMM d, y h:mm:ss a';\r\n        if (pipeArgs.length > 1) {\r\n          format = '';\r\n          for (var i = 1; i < pipeArgs.length; i++) {\r\n            format += pipeArgs[i];\r\n          }\r\n        }\r\n\r\n\r\n        return this.datePipe.transform(date, format);\r\n      case 'date2':\r\n\r\n        if (input) {\r\n\r\n          //méthode 1 : retour sur format 2017-01-20\r\n          /*let tab:any[] = input.split(\"-\");\r\n\r\n          if(tab.length==0){\r\n            return null;\r\n          }\r\n          if(tab.length==1){\r\n            return tab[0];\r\n          }\r\n          if(tab.length==2){\r\n            return tab[0]+\"-\"+tab[1];\r\n          }\r\n          if(tab.length==3){\r\n            let annee:number = +tab[0];\r\n            let mois:number = +tab[1];\r\n            let jour:number = +tab[2];\r\n            \r\n            if(annee!=null&&annee>0&&mois!=null&&mois>0&&jour!=null&&jour>0){\r\n              return tab[0]+\"-\"+this.convertMoisJourToString(tab[1])+\"-\"+this.convertMoisJourToString(tab[2]);\r\n            }\r\n            if(annee!=null&&annee>0&&mois!=null&&mois>0){\r\n              return tab[0]+\"-\"+this.convertMoisJourToString(tab[1]);\r\n            }\r\n            if(annee!=null&&annee>0){\r\n              return tab[0];\r\n            }\r\n            return null;\r\n          }*/\r\n\r\n          //méthode 2 : retour sur le format 05 janvier 2017\r\n          let tab: any[] = input.split(\"-\");\r\n\r\n          if (tab.length == 0) {\r\n            return null;\r\n          }\r\n          if (tab.length == 1) {\r\n            return tab[0];\r\n          }\r\n          if (tab.length == 2) {\r\n            return tab[0] + \"-\" + tab[1];\r\n          }\r\n          if (tab.length == 3) {\r\n            let annee: number = +tab[0];\r\n            let mois: number = +tab[1];\r\n            let jour: number = +tab[2];\r\n\r\n            if (annee != null && annee > 0 && mois != null && mois > 0 && jour != null && jour > 0) {\r\n              return  this.convertMoisJourToString(tab[2]) + \" \" + this.convertMoisMoisToString(tab[1])+\" \"+tab[0];\r\n            }\r\n            if (annee != null && annee > 0 && mois != null && mois > 0) {\r\n              return this.convertMoisMoisToString(tab[1])+\" \"+tab[0];\r\n            }\r\n            if (annee != null && annee > 0) {\r\n              return tab[0];\r\n            }\r\n            return null;\r\n          }\r\n\r\n        }\r\n        return null;\r\n      default:\r\n        return input;\r\n    }\r\n  }\r\n\r\n  convertMoisJourToString(num: string): string {\r\n    if (num != null && num.length > 0) {\r\n      if (num.length == 1) return \"0\" + num;\r\n      if (num.length == 2) return num;\r\n    }\r\n    return null;\r\n  }\r\n  convertMoisMoisToString(num: number): string {\r\n    for (let i = 0; i < this.moisList.length; i++) {\r\n      if (this.moisList[i].numero == num) {\r\n        return this.moisList[i].libelle;\r\n      }\r\n    }\r\n    return null;\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/pipe/format.ts","/*\r\n * Example use\r\n *\t\tBasic Array of single type: *ngFor=\"let todo of todoService.todos | orderBy : '-'\"\r\n *\t\tMultidimensional Array Sort on single column: *ngFor=\"let todo of todoService.todos | orderBy : ['-status']\"\r\n *\t\tMultidimensional Array Sort on multiple columns: *ngFor=\"let todo of todoService.todos | orderBy : ['status', '-title']\"\r\n */\r\n\r\nimport {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({name: 'orderBy', pure: false})\r\nexport class OrderBy implements PipeTransform {\r\n\r\n\tvalue:string[] =[];\r\n\r\n\tstatic _orderByComparator(a:any, b:any):number{\r\n        if(a==null && b==null) return 0;\r\n        if(a==null) return -1; \r\n        if(b==null) return 1;\r\n        if(a === null || typeof a === 'undefined') a = 0;\r\n        if(b === null || typeof b === 'undefined') b = 0;\r\n\r\n\t\tif((isNaN(parseFloat(a)) || !isFinite(a)) || (isNaN(parseFloat(b)) || !isFinite(b))){\r\n\t\t\t//Isn't a number so lowercase the string to properly compare\r\n\t\t\t\r\n            if(a.toLowerCase() < b.toLowerCase()) return -1;\r\n\t\t\tif(a.toLowerCase() > b.toLowerCase()) return 1;\r\n\t\t}\r\n\t\telse{\r\n\t\t\t//Parse strings as numbers to compare properly\r\n\t\t\tif(parseFloat(a) < parseFloat(b)) return -1;\r\n\t\t\tif(parseFloat(a) > parseFloat(b)) return 1;\r\n\t\t}\r\n\r\n\t\treturn 0; //equal each other\r\n\t}\r\n\r\n    transform(input:any, config:string = '+'): any{\r\n        //console.log(input+\"____\"+config);\r\n    \t//make a copy of the input's reference\r\n    \tthis.value = [...input];\r\n    \tvar value = this.value;\r\n        \r\n        if(!Array.isArray(value)){\r\n            return value;\r\n        }\r\n        if(!Array.isArray(config) || (Array.isArray(config) && config.length == 1)){\r\n            var propertyToCheck:string = !Array.isArray(config) ? config : config[0];\r\n            var desc = propertyToCheck.substr(0, 1) == '-';\r\n            \r\n            //Basic array\r\n            if(!propertyToCheck || propertyToCheck == '-' || propertyToCheck == '+'){\r\n                return !desc ? value.sort() : value.sort().reverse();\r\n            }\r\n            else {\r\n                var property:string = propertyToCheck.substr(0, 1) == '+' || propertyToCheck.substr(0, 1) == '-'\r\n                    ? propertyToCheck.substr(1)\r\n                    : propertyToCheck;\r\n\r\n                let tab:any[]=[];\r\n                tab = value.sort(function(a:any,b:any){\r\n                    return !desc \r\n                        ? OrderBy._orderByComparator(a[property], b[property]) \r\n                        : -OrderBy._orderByComparator(a[property], b[property]);\r\n                });\r\n\r\n                let c=0;\r\n                for(let i=0;i<tab.length;i++){\r\n                    if(tab[i].siVisible || tab[i].siFirstLigne){\r\n                        tab[i].numeroStyle = c%2;\r\n                        c++;\r\n                    }\r\n                }\r\n\r\n\r\n                return tab;\r\n            }\r\n        }\r\n        else {\r\n            //Loop over property of the array in order and sort\r\n            let tab:any[]=[];\r\n            tab = value.sort(function(a:any,b:any){\r\n                for(var i:number = 0; i < config.length; i++){\r\n                    var desc = config[i].substr(0, 1) == '-';\r\n                    var property = config[i].substr(0, 1) == '+' || config[i].substr(0, 1) == '-'\r\n                        ? config[i].substr(1)\r\n                        : config[i];\r\n\r\n                    var comparison = !desc \r\n                        ? OrderBy._orderByComparator(a[property], b[property]) \r\n                        : -OrderBy._orderByComparator(a[property], b[property]);\r\n                    \r\n                    //Don't return 0 yet in case of needing to sort by next property\r\n                    if(comparison != 0) return comparison;\r\n                }\r\n\r\n                return 0; //equal each other\r\n            });\r\n            for(let i=0;i<tab.length;i++){\r\n                tab[i].numeroStyle = i%2;\r\n            }\r\n\r\n            return tab;\r\n        }\r\n    }\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/pipe/orderBy.ts","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `angular-cli.json`.\r\n\r\nexport const environment = {\r\n  production: false\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/environments/environment.ts","import { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { FileService } from '../services/file-service';\r\nimport { UtilisateurService } from '../services/utilisateur-service';\r\n\r\nimport { AbstractAllComponent } from './abstract-all.component';\r\n\r\nimport { FilePind } from '../objets/FilePind';\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nexport abstract class AbstractDetailComponent extends AbstractAllComponent {\r\n\r\n    mode: string = null;\r\n\r\n    siSuperAdministrateur: boolean = false;\r\n    siChercheur: boolean = false;\r\n    siGrandPublic: boolean = false;\r\n\r\n    siSubmit = false;\r\n    siSubmitSuccess = false;\r\n    siSubmitEnCours = false;\r\n    msgError: string = null;\r\n    siAllValid: boolean = false;\r\n    siValidationPageMode: boolean = true;\r\n    siChargementDataEnCours: boolean = false;\r\n\r\n    siCheckDAccesPublicModification: boolean = false;\r\n    siCheckDAccesValidPage: boolean = false;\r\n\r\n    siPropositionCreateCompteUtilisateur: boolean = false;//cas du compte temporaire, si compte temporaire apres la sauvegarde d'un objet, on lui propose de s inscrire\r\n\r\n    idTmp: number = -1;\r\n\r\n    //fichier:\r\n    fileNouveauList: FilePind[] = [];\r\n    siRecalculeFileChange: boolean = false;\r\n\r\n\r\n    constructor(\r\n        protected router: Router,\r\n        protected route: ActivatedRoute,\r\n        protected fileService: FileService,\r\n        protected utilisateurService: UtilisateurService\r\n    ) { super(router, utilisateurService) }\r\n\r\n\r\n\r\n    ngOnInit(): void {\r\n        this.siValidationPageMode = false;\r\n\r\n        this.getUserInfo();\r\n\r\n\r\n        this.getInfoRequest();\r\n\r\n        if (!this.checkSiDroitDAccesInitPage()) {//mettre une liste de profils accepté dans l'enfant; a voir si il y des profils suivant le mode, par exemple si le superadmin a tous les droit sur la page des personnes et le grand public a uniquement le droit en création\r\n            this.redirectToNonDroitAcces();\r\n            return null;\r\n        }\r\n        this.initPage();\r\n    }\r\n\r\n    getInfoRequest(): void {\r\n        this.route.params.subscribe(params => {\r\n            if (this.getDetailObj() == null) {\r\n                let idStr = params['id'] + \"\";\r\n                let id: number;\r\n                if (idStr.indexOf(\"-\") >= 0) {\r\n                    id = + idStr.substring(0, idStr.indexOf(\"-\"));\r\n                } else {\r\n                    id = +idStr;\r\n                }\r\n                this.setDetailId(id);\r\n                this.mode = params['mode'];\r\n            } else {\r\n                location.reload();\r\n            }\r\n\r\n        });\r\n    }\r\n\r\n    initPage() {\r\n        this.initPageVariable();\r\n        \r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR) {\r\n            this.siValidationPageMode = true;\r\n        }\r\n\r\n        if (this.mode == \"CONSULTATION\" || this.mode == \"MODIFICATION\") {\r\n            this.siChargementDataEnCours = true;\r\n            this.initById();\r\n        } else if (this.mode == \"CREATION\") {\r\n\r\n        } else {\r\n            this.redirectToPageNotFound();\r\n        }\r\n\r\n    };\r\n\r\n    abstract initById(): void;\r\n    abstract getCreateurId(): number;\r\n\r\n    aftherInitById() {\r\n        if (this.siCheckDAccesPublicModification) {//cas des profils grand public ou non connecté, si le mode est modification, si l'utilisateur n'est pas le créateur alors erreur droit acces\r\n            if (this.getCreateurId() != this.user.utilisateurId) {\r\n                //this.redirectToNonDroitAcces();\r\n                this.mode = \"CONSULTATION\";\r\n            }\r\n        }\r\n        if (this.siCheckDAccesValidPage) {\r\n            if (this.getSiAllValid()) {\r\n                this.mode = \"CONSULTATION\";\r\n            }\r\n        }\r\n        this.siChargementDataEnCours = false;\r\n    }\r\n    abstract getSiAllValid(): boolean;\r\n\r\n    initPageVariable() {\r\n        this.fileNouveauList = [];\r\n    }\r\n\r\n    abstract setDetailId(id: number): void;\r\n\r\n    abstract getDetailObj(): any;\r\n\r\n    onSubmit() {\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.PUBLIC_NON_CONNECTE) {\r\n            this.siPropositionCreateCompteUtilisateur = true;\r\n            this.user = JSON.parse(localStorage.getItem(\"userSession\"));//il faut recharger la liste pour ce profil. dans le cas d une création rapide\r\n        } else {\r\n            this.siPropositionCreateCompteUtilisateur = false;\r\n        }\r\n        if(!this.checkTimeOutDetail()){\r\n            return null;\r\n        }\r\n\r\n        if (!this.checkSiDroitDAccesOnSubmit()) {\r\n            this.redirectToNonDroitAcces();\r\n            return null;\r\n        }\r\n\r\n\r\n        this.siSubmit = false;//passe a true a la fin du submit\r\n        this.siSubmitSuccess = false;\r\n        this.siAllValid = false;\r\n\r\n        this.msgError = null;\r\n        if (!this.validationFormulaire()) {\r\n            this.msgError = \"Le formulaire comporte des erreurs\";\r\n            return;\r\n        }\r\n        this.siSubmitEnCours = true;\r\n        //ajoute les fichiers sur le serveur et entre les données dans l'objet\r\n        if (this.fileNouveauList != null && this.fileNouveauList.length > 0) {//il faut respecter dans l objet détail, que la liste des fichiers est bien nomé \"fileList\"\r\n            this.fileService.uploadFileList(this.fileNouveauList);//a faire une interface ou abstract pour gérer le nomage dans l objet detail \"fileList\"\r\n            for (let i = 0; i < this.fileNouveauList.length; i++) {\r\n                this.getDetailObj().fileList.push(this.fileNouveauList[i]);\r\n                if (!this.fileNouveauList[i].siValide) this.getDetailObj().siFilePresentAllValid = false;\r\n            }\r\n        }\r\n\r\n        if (this.user.utilisateurId == null || this.user.utilisateurId <= 0) {//cas de l'utilisateur connecté sans compte, on lui en créer un automatiquement\r\n            if (this.user.utilisateurId == null || this.user.utilisateurId <= 0) {\r\n                this.siPropositionCreateCompteUtilisateur = true;\r\n                this.createUtilisateurCompteTemporaire();\r\n            } else {\r\n                this.createOrUpdate();\r\n            }\r\n        } else {\r\n            this.createOrUpdate();\r\n        }\r\n        this.changeTimeOfTimeOut();\r\n\r\n    }\r\n    createUtilisateurCompteTemporaireAfter() {\r\n        this.createOrUpdate();\r\n    }\r\n\r\n    abstract createOrUpdate(): void;\r\n    abstract validationFormulaire(): boolean;\r\n\r\n    /* lancer apres le résultat du createorupdate */\r\n    createOrUpdateResultat(ret: number) {\r\n        if (ret > 0) {\r\n            if (this.mode == \"CREATION\") this.mode = \"MODIFICATION\";\r\n            this.setDetailId(ret)\r\n            this.initPage();\r\n            this.siSubmitSuccess = true;\r\n        } else {\r\n            this.siSubmitSuccess = false;\r\n        }\r\n        this.siSubmit = true;\r\n        this.siSubmitEnCours = false;\r\n\r\n    }\r\n\r\n    /* check si l utilisateur à les droits d'acces à l'initialisation de la page*/\r\n    checkSiDroitDAccesInitPage(): boolean {\r\n        this.siCheckDAccesPublicModification = false;\r\n        this.siCheckDAccesValidPage = false;\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR) return true;\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.CHERCHEUR || this.utilisateurProfil == UtilisateurProfilEnum.CONTRIBUTEUR) {\r\n            if (this.mode == \"CONSULTATION\" || this.mode == \"CREATION\") {\r\n                return true;\r\n            }\r\n            this.siCheckDAccesValidPage = true;//sauvegarde de l info, check apres le chargement de l objet si l objet est validé\r\n            return true;\r\n        }\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.GRAND_PUBLIC || this.utilisateurProfil == UtilisateurProfilEnum.PUBLIC_NON_CONNECTE) {\r\n            if (this.mode == \"CONSULTATION\" || this.mode == \"CREATION\") {\r\n                return true;\r\n            }\r\n            this.siCheckDAccesPublicModification = true;//sauvegarde de l info, check apres le chargement de l objet si l'utilisateur est createur\r\n            this.siCheckDAccesValidPage = true;\r\n            return true;\r\n        }\r\n        return false;\r\n    }\r\n\r\n    /* check si l utilisateur à les droits d'acces à l'enregistrement de la page*/\r\n    checkSiDroitDAccesOnSubmit(): boolean {\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR) {\r\n            return true;\r\n        }\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.CHERCHEUR || this.utilisateurProfil == UtilisateurProfilEnum.CONTRIBUTEUR) {\r\n            if (this.mode == \"CREATION\") return true;\r\n            if (this.mode == \"MODIFICATION\") {\r\n                if (this.getSiAllValid()) return false;\r\n                else return true;\r\n            }\r\n            return false;\r\n        }\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.GRAND_PUBLIC || this.utilisateurProfil == UtilisateurProfilEnum.PUBLIC_NON_CONNECTE) {\r\n            if (this.mode == \"CREATION\") return true;\r\n            if (this.mode == \"MODIFICATION\") {\r\n                if (this.getSiAllValid() || this.getCreateurId() != this.user.utilisateurId) return false;\r\n                else return true;\r\n            }\r\n            return false;\r\n        }\r\n        return false;\r\n    }\r\n\r\n    /* retourne si on affiche le champs en écriture ou lecteur */\r\n    getSiInputMode(siChampValid: boolean): boolean {\r\n        if (this.mode == \"CREATION\") return true;\r\n        if (this.mode == \"CONSULTATION\") return false;\r\n        if (this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR) return true;\r\n\r\n        return !siChampValid;\r\n\r\n    }\r\n\r\n\r\n    //fichier\r\n    getFileExtensionAutorise(): string {\r\n        return this.fileService.getFileExtensionAutorise();\r\n    }\r\n    getSizeMaxFileImport(): string {\r\n        return this.fileService.getSizeMaxFileImport();\r\n    }\r\n    downlaodFile(f: FilePind) {\r\n        this.fileService.downlaodFile(f.nomBase);\r\n    }\r\n    addNewFile(fileInput: any, nouveau: FilePind) {\r\n        this.fileService.addNewFileToList(fileInput, nouveau);\r\n    }\r\n    addFile() {\r\n        let f = new FilePind();\r\n        f.id = this.idTmp;\r\n        f.siDelete = false;\r\n        f.siError = false;\r\n\r\n        if (this.siValidationPageMode) {\r\n            f.siValide = true;\r\n        } else {\r\n            f.siValide = false;\r\n        }\r\n        this.fileNouveauList.push(f);\r\n        this.idTmp--;\r\n    }\r\n\r\n    /***** validation des fichiers déja présent */\r\n\r\n    changeAllUnitValid() {}\r\n\r\n    /*************** lieu **************/\r\n    /*getLieuCityNameStr(l: LieuOSM): string {\r\n        return l.address.city + \" (\" + l.address.country + \", \" + l.address.state + \")\";\r\n    }\r\n    getLieuStateNameStr(l: LieuOSM): string {\r\n        return l.address.state + \" (\" + l.address.country + \")\";\r\n    }*/\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/AbstractDetail.component.ts","import { Router } from '@angular/router';\r\n\r\nimport { AbstractAllComponent } from './abstract-all.component';\r\n\r\nimport { UtilisateurProfilEnum } from '../objets/UtilisateurEnum';\r\n\r\nexport abstract class AbstractSearchComponent extends AbstractAllComponent {\r\n  rows: any[] = [];\r\n\r\n  aucunResultat: boolean = false;\r\n  siTriEnCour: boolean = false;\r\n  //  modeLinkToDetailMode: string;\r\n  siDroitAccessCreate: boolean = true;\r\n\r\n  constructor(\r\n    protected router: Router,\r\n  ) { super(router, null) };\r\n\r\n  ngOnInit(): void {\r\n    super.getUserInfo();\r\n    if (!this.checkSiDroitDAccesListPage()) {//mettre une liste de profils accepté dans l'enfant; a voir si il y des profils suivant le mode, par exemple si le superadmin a tous les droit sur la page des personnes et le grand public a uniquement le droit en création\r\n      this.redirectToNonDroitAcces();\r\n    }\r\n\r\n    this.initPageSearch();\r\n    this.onSubmit();\r\n  }\r\n  abstract initPageSearch(): void;\r\n  //abstract getResultatIdByRow(row: any): number;\r\n\r\n  onSubmit() {\r\n    if (!this.checkTimeOutRecherche()) {\r\n      return null;\r\n    }\r\n\r\n    if (!this.checkSiDroitDAccesListPage()) {\r\n      this.redirectToNonDroitAcces();\r\n    }\r\n\r\n  }\r\n  checkSiDroitDAccesListPage(): boolean {\r\n    return true;\r\n  }\r\n\r\n  getModeRedirectionDetail(row: any): string {\r\n    if (this.utilisateurProfil == UtilisateurProfilEnum.SUPER_ADMINISTRATEUR) return \"MODIFICATION\";\r\n    if (this.utilisateurProfil == UtilisateurProfilEnum.CHERCHEUR || this.utilisateurProfil == UtilisateurProfilEnum.CONTRIBUTEUR) {\r\n      if (row.siAllValid && row.siAllValid != 0) {\r\n        return \"CONSULTATION\";\r\n      }\r\n      return \"MODIFICATION\";\r\n    }\r\n    if (this.utilisateurProfil == UtilisateurProfilEnum.GRAND_PUBLIC || this.utilisateurProfil == UtilisateurProfilEnum.PUBLIC_NON_CONNECTE) {\r\n      if (row.siAllValid || row.createurId != this.user.utilisateurId) {\r\n        return \"CONSULTATION\";\r\n      }\r\n      return \"MODIFICATION\";\r\n    }\r\n\r\n\r\n    return \"CONSULTATION\";\r\n  }\r\n\r\n\r\n  // trie des tableaux\r\n  sorting: any = {\r\n    column: 'profilLibelle',//nom de la variable par défaut\r\n    descending: false\r\n  };\r\n\r\n  selectedClass(columnName: any): string {\r\n    return columnName == this.sorting.column ? 'sort-' + this.sorting.descending : \"tri\";\r\n  }\r\n\r\n  changeSorting(columnName: any): void {\r\n    this.siTriEnCour = true;\r\n    var sort = this.sorting;\r\n    if (sort.column == columnName) {\r\n      sort.descending = !sort.descending;\r\n    } else {\r\n      sort.column = columnName;\r\n      sort.descending = false;\r\n    }\r\n  }\r\n\r\n  convertSorting(): string {\r\n    return this.sorting.descending ? '-' + this.sorting.column : this.sorting.column;\r\n  }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/abstract-search.compenent.ts"],"sourceRoot":""}