Optimisation + gestion de l'échange de Nom/Prénom
This commit is contained in:
parent
76897f88d8
commit
3e8890d234
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -7,8 +7,8 @@
|
|||
],
|
||||
"sourcesContent": [
|
||||
"@import 'constants';\n\nbody{\n\n\tfont-family: 'Open Sans';\n\tfont-size: 15px;\n}\n\n\n\n#WRAPPER{\n\tdisplay: block;\n\tposition: fixed;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\tbackground-color: $theme-bg;\n\n\toverflow-x: hidden;\n\toverflow-y: auto;\n\n\tz-index: 1;\n\n\n\t/* [1] Header de la page\n\t==========================================*/\n\t& > #HEADER{\n\t\tdisplay: block;\n\t\tposition: fixed;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\twidth: 100%;\n\t\t\theight: calc( #{$header-height} - 1px );\n\n\t\tborder-bottom: 1px solid darken($header-dark, 10);\n\n\t\tbackground-color: $header-dark;\n\n\t\tz-index: 100;\n\n\t}\n\n\n\t/* [2] Side-Menu de la page\n\t==========================================*/\n\t// Gestion du menu\n\t& > #MENU-SIDE{\n\t\tdisplay: block;\n\t\tposition: fixed;\n\t\t\ttop: $header-height;\n\t\t\tleft: 0;\n\t\t\twidth: $menu-side-width;\n\t\t\theight: calc( 100% - #{$header-height} );\n\n\t\tbox-shadow: 2px 1px 3px #ddd;\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( all .3s );\n\n\t\tz-index: 10;\n\t}\n\n\n\t/* [3] Container de la page\n\t==========================================*/\n\t& > #CONTAINER{\n\t\tdisplay: flex;\n\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tleft: $menu-side-width;\n\t\t\twidth: calc( 100% - #{$menu-side-width} );\n\t\t\tmin-height: calc( 100% - #{$header-height} );\n\t\t// margin: 1em;\n\n\t\t// Flex properties\n\t\tflex-direction: row;\n\t\tjustify-content: space-between;\n\t\tflex-wrap: wrap;\n\n\t\toverflow-x: none;\n\t\toverflow-y: auto;\n\t}\n}\n\n\n\n\n/* [4] Page de login\n=========================================================*/\n#LOGIN{\n\tdisplay: flex;\n\tposition: fixed;\n\t\ttop: 0;\n\t\tleft: -100%;\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t// Quand la page de login est visible\n\t&.active{\n\t\tleft: 0;\n\t}\n\n\t// flex properties\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-around;\n\talign-items: center;\n\n\n\tbackground-color: $dark-bg;\n\n\t@include transition( left .3s ease-in-out );\n\n\tz-index: 101;\n\n\n\n\n\t/* (1) Logo et nom du site */\n\t& > #login-icon{\n\t\twidth: 35em;\n\t\theight: 10em;\n\n\t\tbackground: url('/f/svg/icon/st') center center no-repeat;\n\t\tbackground-size: auto 100%;\n\t}\n\n\n\t/* (2) Formulaire de connexion */\n\t& > #login-form{\n\t\tdisplay: block;\n\n\n\t\t/* (2.1) Champs de texte (login/password) */\n\t\t& > input[type='text'],\n\t\t& > input[type='password'],\n\t\t& > input[type='submit']{\n\t\t\tdisplay: flex;\n\t\t\t\twidth: 20em;\n\n\t\t\tmargin: 2em 0;\n\t\t\tpadding: 1em 2em;\n\n\t\t\t// flex properties\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: space-around;\n\t\t\tflex-wrap: nowrap;\n\t\t\talign-items: middle;\n\n\n\t\t\tborder-radius: 5px;\n\t\t\tborder: 1px solid lighten($theme-fg, 10);\n\n\t\t\tbackground-color: $dark-bg;\n\n\t\t\tcolor: $dark-fg-primary;\n\t\t\tfont-weight: bold;\n\t\t\tletter-spacing: .07em;\n\n\t\t\t@include transition( border .2s ease-in-out );\n\n\t\t\tcursor: default;\n\n\t\t\t// Animation de @hover/@focus\n\t\t\t&:hover,\n\t\t\t&:focus{\n\t\t\t\tborder-color: $theme-fg-primary;\n\t\t\t}\n\n\t\t}\n\n\n\t\t/* (2.2) Bouton de connexion */\n\t\t& > input[type='submit']{\n\t\t\twidth: 100%;\n\t\t\tmargin: 2em 0;\n\n\t\t\tborder: 0;\n\n\t\t\tbackground-color: $theme-fg-primary;\n\n\t\t\tcolor: $dark-fg-primary;\n\t\t\tfont-weight: bold;\n\t\t\ttext-align: left;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// Animation de @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: darken($theme-fg-primary, 10);\n\t\t\t\tbox-shadow: 0 0 1em darken($dark-bg, 10);\n\t\t\t}\n\n\t\t}\n\n\n\n\n\n\t\t/* (3) Mot de passe oublie */\n\t\t& > #lost-password{\n\t\t\tcolor: $dark-fg;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// Animation de @hover\n\t\t\t&:hover{\n\t\t\t\tcolor: $theme-fg-primary;\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/* (4) Gestion de la fermeture */\n\t& > #login-close{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: 2em;\n\t\t\tright: 2em;\n\t\t\tmin-width: 2em;\n\t\t\theight: 2em;\n\n\t\tbackground: url('/f/svg/back/st/container/ffffff') right center no-repeat;\n\t\tbackground-size: 1em;\n\n\t\tcolor: #fff;\n\t\tpadding-right: 2em;\n\t\tline-height: 2em;\n\t\tfont-weight: bold;\n\n\t\tcursor: pointer;\n\t}\n}\n",
|
||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #333333;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #399ced;\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n transform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n -webkit-transition: $value;\n transition: $value;\n}\n"
|
||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #333333;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n transform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n -webkit-transition: $value;\n transition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n @return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||
],
|
||||
"mappings": "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",
|
||||
"mappings": "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",
|
||||
"names": []
|
||||
}
|
File diff suppressed because one or more lines are too long
|
@ -7,8 +7,8 @@
|
|||
],
|
||||
"sourcesContent": [
|
||||
"@import 'constants';\n\nbody{\n\n\tfont-family: 'Open Sans';\n\tfont-size: 15px;\n}\n\n\n\n#WRAPPER{\n\tdisplay: block;\n\tposition: fixed;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\tbackground-color: $theme-bg;\n\n\toverflow-x: hidden;\n\toverflow-y: auto;\n\n\tz-index: 1;\n\n\n\t/* [1] Header de la page\n\t==========================================*/\n\t& > #HEADER{\n\t\tdisplay: block;\n\t\tposition: fixed;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\twidth: 100%;\n\t\t\theight: calc( #{$header-height} - 1px );\n\n\t\tborder-bottom: 1px solid darken($header-dark, 10);\n\n\t\tbackground-color: $header-dark;\n\n\t\tz-index: 100;\n\n\t}\n\n\n\t/* [2] Side-Menu de la page\n\t==========================================*/\n\t// Gestion du menu\n\t& > #MENU-SIDE{\n\t\tdisplay: block;\n\t\tposition: fixed;\n\t\t\ttop: $header-height;\n\t\t\tleft: 0;\n\t\t\twidth: $menu-side-width;\n\t\t\theight: calc( 100% - #{$header-height} );\n\n\t\tbox-shadow: 2px 1px 3px #ddd;\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( all .3s );\n\n\t\tz-index: 10;\n\t}\n\n\n\t/* [3] Container de la page\n\t==========================================*/\n\t& > #CONTAINER{\n\t\tdisplay: flex;\n\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tleft: $menu-side-width;\n\t\t\twidth: calc( 100% - #{$menu-side-width} );\n\t\t\tmin-height: calc( 100% - #{$header-height} );\n\t\t// margin: 1em;\n\n\t\t// Flex properties\n\t\tflex-direction: row;\n\t\tjustify-content: space-between;\n\t\tflex-wrap: wrap;\n\n\t\toverflow-x: none;\n\t\toverflow-y: auto;\n\t}\n}\n\n\n\n\n/* [4] Page de login\n=========================================================*/\n#LOGIN{\n\tdisplay: flex;\n\tposition: fixed;\n\t\ttop: 0;\n\t\tleft: -100%;\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t// Quand la page de login est visible\n\t&.active{\n\t\tleft: 0;\n\t}\n\n\t// flex properties\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-around;\n\talign-items: center;\n\n\n\tbackground-color: $dark-bg;\n\n\t@include transition( left .3s ease-in-out );\n\n\tz-index: 101;\n\n\n\n\n\t/* (1) Logo et nom du site */\n\t& > #login-icon{\n\t\twidth: 35em;\n\t\theight: 10em;\n\n\t\tbackground: url('/f/svg/icon/st') center center no-repeat;\n\t\tbackground-size: auto 100%;\n\t}\n\n\n\t/* (2) Formulaire de connexion */\n\t& > #login-form{\n\t\tdisplay: block;\n\n\n\t\t/* (2.1) Champs de texte (login/password) */\n\t\t& > input[type='text'],\n\t\t& > input[type='password'],\n\t\t& > input[type='submit']{\n\t\t\tdisplay: flex;\n\t\t\t\twidth: 20em;\n\n\t\t\tmargin: 2em 0;\n\t\t\tpadding: 1em 2em;\n\n\t\t\t// flex properties\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: space-around;\n\t\t\tflex-wrap: nowrap;\n\t\t\talign-items: middle;\n\n\n\t\t\tborder-radius: 5px;\n\t\t\tborder: 1px solid lighten($theme-fg, 10);\n\n\t\t\tbackground-color: $dark-bg;\n\n\t\t\tcolor: $dark-fg-primary;\n\t\t\tfont-weight: bold;\n\t\t\tletter-spacing: .07em;\n\n\t\t\t@include transition( border .2s ease-in-out );\n\n\t\t\tcursor: default;\n\n\t\t\t// Animation de @hover/@focus\n\t\t\t&:hover,\n\t\t\t&:focus{\n\t\t\t\tborder-color: $theme-fg-primary;\n\t\t\t}\n\n\t\t}\n\n\n\t\t/* (2.2) Bouton de connexion */\n\t\t& > input[type='submit']{\n\t\t\twidth: 100%;\n\t\t\tmargin: 2em 0;\n\n\t\t\tborder: 0;\n\n\t\t\tbackground-color: $theme-fg-primary;\n\n\t\t\tcolor: $dark-fg-primary;\n\t\t\tfont-weight: bold;\n\t\t\ttext-align: left;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// Animation de @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: darken($theme-fg-primary, 10);\n\t\t\t\tbox-shadow: 0 0 1em darken($dark-bg, 10);\n\t\t\t}\n\n\t\t}\n\n\n\n\n\n\t\t/* (3) Mot de passe oublie */\n\t\t& > #lost-password{\n\t\t\tcolor: $dark-fg;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// Animation de @hover\n\t\t\t&:hover{\n\t\t\t\tcolor: $theme-fg-primary;\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/* (4) Gestion de la fermeture */\n\t& > #login-close{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: 2em;\n\t\t\tright: 2em;\n\t\t\tmin-width: 2em;\n\t\t\theight: 2em;\n\n\t\tbackground: url('/f/svg/back/st/container/ffffff') right center no-repeat;\n\t\tbackground-size: 1em;\n\n\t\tcolor: #fff;\n\t\tpadding-right: 2em;\n\t\tline-height: 2em;\n\t\tfont-weight: bold;\n\n\t\tcursor: pointer;\n\t}\n}\n",
|
||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #333333;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #399ced;\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n transform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n -webkit-transition: $value;\n transition: $value;\n}\n"
|
||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #333333;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n transform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n -webkit-transition: $value;\n transition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n @return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||
],
|
||||
"mappings": "AAEA,IAAI,AAAA,CAEH,WAAW,CAAE,WAAY,CACzB,SAAS,CAAE,IAAK,CAChB,AAID,QAAQ,AAAA,CACP,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,KAAM,CACf,GAAG,CAAE,CAAE,CACP,IAAI,CAAE,CAAE,CACR,KAAK,CAAE,IAAK,CACZ,MAAM,CAAE,IAAK,CAEd,gBAAgB,CCfE,OAAO,CDiBzB,UAAU,CAAE,MAAO,CACnB,UAAU,CAAE,IAAK,CAEjB,OAAO,CAAE,CAAE,CA8DX,AA3ED,QAAQ,CAkBH,OAAO,AAAA,CACV,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,KAAM,CACf,GAAG,CAAE,CAAE,CACP,IAAI,CAAE,CAAE,CACR,KAAK,CAAE,IAAK,CACZ,MAAM,CAAE,gBAAI,CAEb,aAAa,CAAE,GAAG,CAAC,KAAK,CAAC,OAAM,CAE/B,gBAAgB,CCxBA,IAAO,CD0BvB,OAAO,CAAE,GAAI,CAEb,AAhCF,QAAQ,CAsCH,UAAU,AAAA,CACb,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,KAAM,CACf,GAAG,CC5BY,GAAG,CD6BlB,IAAI,CAAE,CAAE,CACR,KAAK,CC/BU,IAAI,CDgCnB,MAAM,CAAE,iBAAI,CAEb,UAAU,CAAE,gBAAiB,CAE7B,gBAAgB,CAAE,IAAK,CCnBrB,kBAAkB,CDqBC,GAAG,CAAC,IAAG,CCpB1B,UAAU,CDoBS,GAAG,CAAC,IAAG,CAE5B,OAAO,CAAE,EAAG,CACZ,AArDF,QAAQ,CA0DH,UAAU,AAAA,CACb,OAAO,CAAE,IAAK,CACd,QAAQ,CAAE,QAAS,CAClB,GAAG,CChDY,GAAG,CDiDlB,IAAI,CClDW,IAAI,CDmDnB,KAAK,CAAE,kBAAI,CACX,UAAU,CAAE,iBAAI,CAIjB,cAAc,CAAE,GAAI,CACpB,eAAe,CAAE,aAAc,CAC/B,SAAS,CAAE,IAAK,CAEhB,UAAU,CAAE,IAAK,CACjB,UAAU,CAAE,IAAK,CACjB,AAQF,MAAM,AAAA,CACL,OAAO,CAAE,IAAK,CACd,QAAQ,CAAE,KAAM,CACf,GAAG,CAAE,CAAE,CACP,IAAI,CAAE,KAAM,CACZ,KAAK,CAAE,IAAK,CACZ,MAAM,CAAE,IAAK,CAQd,cAAc,CAAE,GAAI,CACpB,SAAS,CAAE,MAAO,CAClB,eAAe,CAAE,YAAa,CAC9B,WAAW,CAAE,MAAO,CAGpB,gBAAgB,CCvGC,OAAO,CA8BrB,kBAAkB,CD2EA,IAAI,CAAC,IAAG,CAAC,WAAW,CC1EtC,UAAU,CD0EQ,IAAI,CAAC,IAAG,CAAC,WAAW,CAEzC,OAAO,CAAE,GAAI,CAwHb,AAhJD,MAAM,AASJ,OAAO,AAAA,CACP,IAAI,CAAE,CAAE,CACR,AAXF,MAAM,CA8BD,WAAW,AAAA,CACd,KAAK,CAAE,IAAK,CACZ,MAAM,CAAE,IAAK,CAEb,UAAU,CAAE,qBAAG,CAAmB,MAAM,CAAC,MAAM,CAAC,SAAS,CACzD,eAAe,CAAE,SAAU,CAC3B,AApCF,MAAM,CAwCD,WAAW,AAAA,CACd,OAAO,CAAE,KAAM,CAkFf,AA3HF,MAAM,CAwCD,WAAW,CAKV,KAAK,CAAA,AAAA,IAAC,CAAK,MAAM,AAAX,EA7CZ,MAAM,CAwCD,WAAW,CAMV,KAAK,CAAA,AAAA,IAAC,CAAK,UAAU,AAAf,EA9CZ,MAAM,CAwCD,WAAW,CAOV,KAAK,CAAA,AAAA,IAAC,CAAK,QAAQ,AAAb,CAAc,CACvB,OAAO,CAAE,IAAK,CACb,KAAK,CAAE,IAAK,CAEb,MAAM,CAAE,KAAM,CACd,OAAO,CAAE,OAAQ,CAGjB,cAAc,CAAE,MAAO,CACvB,eAAe,CAAE,YAAa,CAC9B,SAAS,CAAE,MAAO,CAClB,WAAW,CAAE,MAAO,CAGpB,aAAa,CAAE,GAAI,CACnB,MAAM,CAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAEzB,gBAAgB,CCnJD,OAAO,CDqJtB,KAAK,CClJU,IAAO,CDmJtB,WAAW,CAAE,IAAK,CAClB,cAAc,CAAE,KAAM,CCzHrB,kBAAkB,CD2HE,MAAM,CAAC,IAAG,CAAC,WAAW,CC1H1C,UAAU,CD0HU,MAAM,CAAC,IAAG,CAAC,WAAW,CAE3C,MAAM,CAAE,OAAQ,CAQhB,AAhFH,MAAM,CAwCD,WAAW,CAKV,KAAK,CAAA,AAAA,IAAC,CAAK,MAAM,AAAX,CA8BR,MAAM,CA3EV,MAAM,CAwCD,WAAW,CAKV,KAAK,CAAA,AAAA,IAAC,CAAK,MAAM,AAAX,CA+BR,MAAM,CA5EV,MAAM,CAwCD,WAAW,CAMV,KAAK,CAAA,AAAA,IAAC,CAAK,UAAU,AAAf,CA6BR,MAAM,CA3EV,MAAM,CAwCD,WAAW,CAMV,KAAK,CAAA,AAAA,IAAC,CAAK,UAAU,AAAf,CA8BR,MAAM,CA5EV,MAAM,CAwCD,WAAW,CAOV,KAAK,CAAA,AAAA,IAAC,CAAK,QAAQ,AAAb,CA4BR,MAAM,CA3EV,MAAM,CAwCD,WAAW,CAOV,KAAK,CAAA,AAAA,IAAC,CAAK,QAAQ,AAAb,CA6BR,MAAM,AAAA,CACN,YAAY,CCnKG,OAAO,CDoKtB,AA9EJ,MAAM,CAwCD,WAAW,CA4CV,KAAK,CAAA,AAAA,IAAC,CAAK,QAAQ,AAAb,CAAc,CACvB,KAAK,CAAE,IAAK,CACZ,MAAM,CAAE,KAAM,CAEd,MAAM,CAAE,CAAE,CAEV,gBAAgB,CChLA,OAAO,CDkLvB,KAAK,CC5KU,IAAO,CD6KtB,WAAW,CAAE,IAAK,CAClB,UAAU,CAAE,IAAK,CAEjB,MAAM,CAAE,OAAQ,CAQhB,AAxGH,MAAM,CAwCD,WAAW,CA4CV,KAAK,CAAA,AAAA,IAAC,CAAK,QAAQ,AAAb,CAeR,MAAM,AAAA,CACN,gBAAgB,CAAE,OAAM,CACxB,UAAU,CAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAM,CAC1B,AAtGJ,MAAM,CAwCD,WAAW,CAuEV,cAAc,AAAA,CACjB,KAAK,CCjMU,OAAO,CDmMtB,MAAM,CAAE,OAAQ,CAOhB,AAzHH,MAAM,CAwCD,WAAW,CAuEV,cAAc,AAMhB,MAAM,AAAA,CACN,KAAK,CC5MU,OAAO,CD6MtB,eAAe,CAAE,SAAU,CAC3B,AAxHJ,MAAM,CA8HD,YAAY,AAAA,CACf,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,QAAS,CAClB,GAAG,CAAE,GAAI,CACT,KAAK,CAAE,GAAI,CACX,SAAS,CAAE,GAAI,CACf,MAAM,CAAE,GAAI,CAEb,UAAU,CAAE,sCAAG,CAAoC,KAAK,CAAC,MAAM,CAAC,SAAS,CACzE,eAAe,CAAE,GAAI,CAErB,KAAK,CAAE,IAAK,CACZ,aAAa,CAAE,GAAI,CACnB,WAAW,CAAE,GAAI,CACjB,WAAW,CAAE,IAAK,CAElB,MAAM,CAAE,OAAQ,CAChB",
|
||||
"mappings": "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",
|
||||
"names": []
|
||||
}
|
|
@ -476,7 +476,22 @@
|
|||
}
|
||||
|
||||
|
||||
/* (14) Switch entre Nom et Prénom */
|
||||
& span.switch{
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
|
||||
margin-right: 15px;
|
||||
|
||||
background: url('/f/svg/switch/st/container/4e4e50') center center no-repeat;
|
||||
background-size: 1em auto;
|
||||
|
||||
font-size: .8em;
|
||||
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -7,6 +7,7 @@ contactBuilder.setLayout(
|
|||
"\t<input type='text' data-name='number' placeholder='Numéro de téléphone' value='@number' > \n"+
|
||||
"\t<input type='text' data-name='username' placeholder='Pseudo' value='@username' > \n"+
|
||||
"\t<input type='text' data-name='firstname' placeholder='Prénom' value='@firstname' > \n"+
|
||||
"\t<span class='switch'></span> \n"+
|
||||
"\t<input type='text' data-name='lastname' placeholder='Nom' value='@lastname' > \n"+
|
||||
"\t<input type='submit' class='primary sub-number' value='Enregistrer'>\n"+
|
||||
"</h4>\n\n");
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
function inputPhoneContact(a,b){this.container=a;this.add_button=b}inputPhoneContact.prototype={container:this.container,add_button:this.add_button,handler:null};
|
||||
function inputPhoneContact(a){this.container=a}inputPhoneContact.prototype={container:this.container,handler:null};
|
||||
inputPhoneContact.prototype.fieldsToStorage=function(){console.log("CONTACTS: FIELDS TO STORAGE");for(var a=$$("article.contact-panel .new-contact"),b=0;b<a.length;b++){var c=a[b].parentNode.children.indexOf(a[b]),d=(new FormDeflater(a[b],["input"],["data-name"])).deflate(),e=0<d.number.value.length;(e=e&&0<d.username.value.length+d.firstname.value.length+d.lastname.value.length)&&lsi.set("contacts","form"+c,{uid:c,number:d.number.value,username:d.username.value,firstname:d.firstname.value,lastname:d.lastname.value})}};
|
||||
inputPhoneContact.prototype.add=function(a){console.log("CONTACTS: ADD");a.number=null!=a.number?a.number:"";a.username=null!=a.username?a.username:"";a.firstname=null!=a.firstname?a.firstname:"";a.lastname=null!=a.lastname?a.lastname:"";this.container.innerHTML+=contactBuilder.build(a);a=$$('article.contact-panel .new-contact input[type="submit"]');for(var b=this,c=0;c<a.length;c++)a[c].removeEventListener("click",function(a){b.handler()},!1),a[c].addEventListener("click",function(a){b.handler()},
|
||||
!1)};inputPhoneContact.prototype.storageToFields=function(){console.log("CONTACTS: STORAGE TO FIELDS");var a=lsi.keys("contacts");this.container.innerHTML="";for(var b=0;b<a.length;b++){var c=lsi.get("contacts",a[b]);this.add(c)}this.add({number:"",firstname:"",lastname:"",username:""})};inputPhoneContact.prototype.attach=function(a){console.log("CONTACTS: ATTACH");lsi.createDataset("contacts");this.handler=a;var b=this;this.add_button.addEventListener("click",function(){b.handler()},!1);this.storageToFields()};
|
||||
inputPhoneContact.prototype.add=function(a){console.log("CONTACTS: ADD");a.number=null!=a.number?a.number:"";a.username=null!=a.username?a.username:"";a.firstname=null!=a.firstname?a.firstname:"";a.lastname=null!=a.lastname?a.lastname:"";this.container.innerHTML+=contactBuilder.build(a);a=$$("article.contact-panel .new-contact");for(var b=this,c=0;c<a.length;c++)a[c].removeEventListener("click",function(a){b.handler(a.target)},!1),a[c].addEventListener("click",function(a){b.handler(a.target)},!1)};
|
||||
inputPhoneContact.prototype.storageToFields=function(){console.log("CONTACTS: STORAGE TO FIELDS");var a=lsi.keys("contacts");this.container.innerHTML="";for(var b=0;b<a.length;b++){var c=lsi.get("contacts",a[b]);this.add(c)}this.add({number:"",firstname:"",lastname:"",username:""})};inputPhoneContact.prototype.attach=function(a){console.log("CONTACTS: ATTACH");lsi.createDataset("contacts");this.handler=a;this.storageToFields()};
|
||||
|
|
|
@ -1,15 +1,13 @@
|
|||
/* [0] Constructeur -> définit le conteneur et le bouton d'ajout
|
||||
=========================================================*/
|
||||
function inputPhoneContact(container, add_button){
|
||||
function inputPhoneContact(container){
|
||||
this.container = container;
|
||||
this.add_button = add_button;
|
||||
}
|
||||
|
||||
/* [1] Attributs
|
||||
=========================================================*/
|
||||
inputPhoneContact.prototype = {
|
||||
container: this.container, // Conteneur des formulaires de contact
|
||||
add_button: this.add_button, // Bouton d'ajout d'un formulaire
|
||||
handler: null // Fonction pour l'enregistrement et la synchronisation des données
|
||||
};
|
||||
|
||||
|
@ -86,14 +84,14 @@ inputPhoneContact.prototype.add = function(objectData){
|
|||
// {1} On ajoute le HTML //
|
||||
this.container.innerHTML += contactBuilder.build(objectData);
|
||||
|
||||
// {2} On attache les évènements sur les boutons 'Enregistrer' //
|
||||
var contactSubmits = $$('article.contact-panel .new-contact input[type="submit"]');
|
||||
// {2} On attache les évènements sur les formulaires //
|
||||
var contactForms = $$('article.contact-panel .new-contact');
|
||||
|
||||
// On met à jour les listener (remove, puis add)
|
||||
var ptr = this;
|
||||
for( var i = 0 ; i < contactSubmits.length ; i++ ){
|
||||
contactSubmits[i].removeEventListener('click', function(e){ ptr.handler(); }, false);
|
||||
contactSubmits[i].addEventListener('click', function(e){ ptr.handler(); }, false);
|
||||
for( var i = 0 ; i < contactForms.length ; i++ ){
|
||||
contactForms[i].removeEventListener('click', function(e){ ptr.handler(e.target); }, false);
|
||||
contactForms[i].addEventListener('click', function(e){ ptr.handler(e.target); }, false);
|
||||
}
|
||||
|
||||
};
|
||||
|
@ -142,13 +140,9 @@ inputPhoneContact.prototype.attach = function(handler){
|
|||
/* (1) On initialise le jeu de données */
|
||||
lsi.createDataset('contacts');
|
||||
|
||||
// On enregistre le handler
|
||||
/* (2) On enregistre le handler */
|
||||
this.handler = handler;
|
||||
|
||||
/* (2) On attache l'évènement sur le bouton d'ajout de contact */
|
||||
var ptr = this;
|
||||
this.add_button.addEventListener('click', function(){ ptr.handler(); }, false);
|
||||
|
||||
/* (3) On charge les contacts depuis la mémoire ('localStorage') */
|
||||
this.storageToFields();
|
||||
};
|
||||
|
|
|
@ -4,8 +4,8 @@ job:c.job.value,loc:c.loc};c.valid=this.check(c);lsi.set("mini-fiches","form"+c.
|
|||
inputPhoneMini.prototype.add=function(a){console.log("MINI FICHE: ADD");if(null==a.uid)return!1;a.firstname=null!=a.firstname?a.firstname:this.defaultData.firstname;a.lastname=null!=a.lastname?a.lastname:this.defaultData.lastname;a.username=null!=a.username?a.username:this.defaultData.username;a.age=null!=a.age?a.age:this.defaultData.age;a.sexe=null!=a.sexe?a.sexe:this.defaultData.sexe;a.job=null!=a.job?a.job:this.defaultData.job;a.loc=null!=a.loc?a.loc:this.defaultData.loc;this.container.innerHTML+=
|
||||
miniFicheBuilder.build({firstname:a.firstname,lastname:a.lastname,username:a.username,uid:a.uid,age:a.age,job:a.job});var b=$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>span>select[data-name="job"]>option[value="'+a.job+'"]');null!=b&&b.setAttribute("selected","selected");for(var c=$$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="sexe"]'),b=0;b<c.length&&b<a.sexe.length;b++)a.sexe[b].status?c[b].setAttribute("checked",
|
||||
"checked"):c[b].removeAttribute("checked");c=$$('article.mini-fiche-relation input[data-name="uid"][value="'+a.uid+'"] ~ h5>input[type="radio"][data-name="loc"]');for(b=0;b<c.length&&b<a.loc.length;b++)a.loc[b].status?c[b].setAttribute("checked","checked"):c[b].removeAttribute("checked")};
|
||||
inputPhoneMini.prototype.storageToFields=function(){console.log("MINI FICHE: STORAGE TO FIELDS");var a=lsi.keys("mini-fiches");this.container.innerHTML="";for(var b=[],c=0;c<a.length;c++){var d=lsi.get("mini-fiches",a[c]);b.push(d.uid);c==this.selected&&this.add({uid:d.uid,firstname:d.firstname,lastname:d.lastname,username:d.username,age:d.age,sexe:d.sexe,job:d.job,loc:d.loc})}this.updateNavBar(b)};
|
||||
inputPhoneMini.prototype.storageToFields=function(){console.log("MINI FICHE: STORAGE TO FIELDS");var a=lsi.keys("mini-fiches");this.container.innerHTML="";for(var b=[],c=0;c<a.length;c++){var d=lsi.get("mini-fiches",a[c]);c==this.selected&&this.add(d);b.push(d.uid)}this.updateNavBar(b)};
|
||||
inputPhoneMini.prototype.sync=function(){console.log("MINI FICHE: SYNC");for(var a=lsi.keys("contacts"),b=0;b<a.length;b++){var c=lsi.get("contacts",a[b]),d=lsi.get("mini-fiches",a[b]);null==d&&(d=this.defaultData,d.valid=!1);d.uid=c.uid;d.firstname=c.firstname;d.lastname=c.lastname;d.username=c.username;lsi.set("mini-fiches",a[b],d)}};
|
||||
inputPhoneMini.prototype.nav=function(a){if("undefined"==typeof a||isNaN(a.innerHTML))return!1;for(var b=$$("#nav-mini > span.active"),c=0;c<b.length;c++)b[c].remClass("active");a.addClass("active");this.selected=parseInt(a.innerHTML)-1};
|
||||
inputPhoneMini.prototype.updateNavBar=function(a){if(this.nav_container.children.length!=a.length){this.nav_container.innerHTML="";for(var b=0;b<a.length;b++)this.nav_container.innerHTML+="<span>"+(parseInt(a[b])+1)+"</span>"}a=lsi.keys("mini-fiches");for(b=0;b<a.length;b++){var c=lsi.get("mini-fiches",a[b]);!0===c.valid?this.nav_container.children[c.uid].addClass("done"):this.nav_container.children[c.uid].remClass("done")}this.nav(this.nav_container.children[this.selected])};
|
||||
inputPhoneMini.prototype.check=function(a){return!isNaN(parseInt(a.age))&&checkRadioValue(a.sexe)&&"."!=a.job&&checkRadioValue(a.loc)?!0:!1};inputPhoneMini.prototype.attach=function(a){console.log("MINI FICHE: ATTACH");lsi.createDataset("mini-fiches");this.storageToFields();this.handler=a;var b=this,b=this;this.nav_container.addEventListener("click",function(a){b.nav(a.target);b.handler()},!1)};
|
||||
inputPhoneMini.prototype.check=function(a){return!isNaN(parseInt(a.age))&&checkRadioValue(a.sexe)&&"."!=a.job&&checkRadioValue(a.loc)?!0:!1};inputPhoneMini.prototype.attach=function(a){console.log("MINI FICHE: ATTACH");lsi.createDataset("mini-fiches");this.storageToFields();this.handler=a;var b=this,b=this;this.nav_container.addEventListener("click",function(a){b.nav(a.target);b.handler(a.target)},!1)};
|
||||
|
|
|
@ -161,23 +161,15 @@ inputPhoneMini.prototype.storageToFields = function(){
|
|||
var UIDs = [];
|
||||
|
||||
for( var i = 0 ; i < existingMiniFiches.length ; i++ ){
|
||||
// {2} On récupère les informations du contact //
|
||||
var ficheData = lsi.get('mini-fiches', existingMiniFiches[i]);
|
||||
UIDs.push(ficheData.uid);
|
||||
// {2} On récupère les informations de la MINI fiche //
|
||||
var miniData = lsi.get('mini-fiches', existingMiniFiches[i]);
|
||||
|
||||
// {3} On affiche la MINI fiche sélectionnée //
|
||||
if( i == this.selected )
|
||||
this.add({
|
||||
uid: ficheData.uid,
|
||||
firstname: ficheData.firstname,
|
||||
lastname: ficheData.lastname,
|
||||
username: ficheData.username,
|
||||
age: ficheData.age,
|
||||
sexe: ficheData.sexe,
|
||||
job: ficheData.job,
|
||||
loc: ficheData.loc
|
||||
});
|
||||
this.add(miniData);
|
||||
|
||||
// {4} On enregistre l'UID //
|
||||
UIDs.push(miniData.uid);
|
||||
}
|
||||
|
||||
|
||||
|
@ -352,7 +344,7 @@ inputPhoneMini.prototype.attach = function(handler){
|
|||
// 1. On gère la navigation
|
||||
ptr.nav(e.target);
|
||||
// 2. On gere le chargement dynamique
|
||||
ptr.handler();
|
||||
ptr.handler(e.target);
|
||||
}, false);
|
||||
|
||||
};
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
height="32"
|
||||
version="1.1"
|
||||
viewBox="0 0 32 32"
|
||||
width="32"
|
||||
xml:space="preserve"
|
||||
id="svg4190"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="switch.svg"><metadata
|
||||
id="metadata4204"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs4202" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1056"
|
||||
id="namedview4200"
|
||||
showgrid="false"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:zoom="14.053747"
|
||||
inkscape:cx="11.638408"
|
||||
inkscape:cy="5.4307279"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg4190" /><g
|
||||
id="Layer_1"
|
||||
transform="translate(0,8)" /><g
|
||||
id="transfer"
|
||||
transform="translate(0,4)"><g
|
||||
id="g4194"><polygon
|
||||
points="7.992,12 7.992,16 32,16 32,20 7.992,20 7.992,24 0,18 "
|
||||
style="fill:#4e4e50"
|
||||
id="stylisable" /><polygon
|
||||
points="24,0 24,4 0,4 0,8 24,8 24,12 32,6 "
|
||||
style="fill:#4e4e50"
|
||||
id="stylisable" /></g></g></svg>
|
After Width: | Height: | Size: 1.8 KiB |
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 231 KiB |
|
@ -35,6 +35,16 @@
|
|||
?><section data-sublink='phone'> <!-- IMPORT ou SAISIE -->
|
||||
|
||||
<section data-timeline>
|
||||
|
||||
<h3 data-n='0' class='color4'>Effacer les données de la dernière enquête</h3>
|
||||
<span data-space></span>
|
||||
<h4 class='self color2' data-icon='e'>
|
||||
<input type='submit' class='primary' id='clear-all' value='Tout effacer'>
|
||||
</h4>
|
||||
<span data-space></span>
|
||||
|
||||
|
||||
|
||||
<h3 data-n='1' class='color4'>Identifier l'enquêté</h3>
|
||||
<span data-space></span>
|
||||
<h5 data-text="Renseigner au moins un des nominatifs pour chaque contact. (pseudo, prénom et/ou nom)"></h5>
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
var importCallLog=$('input#call_log-import[type="file"]'),subjectManager,contactManager,miniManager,ficheManager;function dynamicUpdate(){console.log("DYNAMIC UPDATE: UPDATING");miniManager.fieldsToStorage();ficheManager.fieldsToStorage();contactManager.fieldsToStorage();miniManager.sync();ficheManager.sync();miniManager.storageToFields();ficheManager.storageToFields();contactManager.storageToFields()}
|
||||
function checkRadioValue(c){for(var a=0,b=0;b<c.length;b++)!0===c[b].status&&a++;return 1!=a?!1:!0}
|
||||
var clearAllButton=$("#clear-all"),importCallLog=$('input#call_log-import[type="file"]'),subjectManager,contactManager,miniManager,ficheManager;
|
||||
function dynamicUpdate(a){console.log(a);var b="SPAN"==a.tagName&&"switch"==a.className,c="INPUT"==a.tagName&&"submit"==a.type,d="SPAN"==a.tagName&&("nav-mini"==a.parentNode.id||"nav-fiche"==a.parentNode.id);if(!b&&!c&&~d)return!1;b?(console.log("> switch firstname <-> lastname"),b=a.parentNode,a=b.children[2],b=b.children[4],c=a.value,a.value=b.value,b.value=c):(console.log("> dynamic update"),miniManager.fieldsToStorage(),ficheManager.fieldsToStorage(),contactManager.fieldsToStorage(),miniManager.sync(),
|
||||
ficheManager.sync(),miniManager.storageToFields(),ficheManager.storageToFields(),contactManager.storageToFields())}function checkRadioValue(a){for(var b=0,c=0;c<a.length;c++)!0===a[c].status&&b++;return 1!=b?!1:!0}
|
||||
include("/js/includes/input-phone-subject.js",function(){include("/js/includes/input-phone-contact.js",function(){include("/js/includes/input-phone-mini.js",function(){include("/js/includes/input-phone-fiche.js",function(){subjectManager=new inputPhoneSubject($('article.subject-panel [data-name="number"]'),$('article.subject-panel [data-name="username"]'),$('article.subject-panel [data-name="firstname"]'),$('article.subject-panel [data-name="lastname"]'),$('article.subject-panel [data-name="submit"]'));
|
||||
subjectManager.attach();contactManager=new inputPhoneContact($("article.contact-panel"),$("h4.add-contact"));contactManager.attach(dynamicUpdate);miniManager=new inputPhoneMini($("article.mini-relation-panel"),$("#nav-mini"));miniManager.attach(dynamicUpdate);ficheManager=new inputPhoneFiche($("article.relation-panel"),$("#nav-fiche"));ficheManager.attach(dynamicUpdate);importCallLog.addEventListener("change",function(c){api.send({path:"upload/call_log",file:importCallLog.files[0]},function(a){console.log(a);
|
||||
0==a.ModuleError&&(importCallLog.addClass("active"),a={path:"call_log/unserialize",phone_number:$("#subject_phone_number").value},api.send(a,function(b){console.log(b);if(0==b.ModuleError){for(var a=0;a<b.directory.length&&20>a;a++)lsi.set("contacts","form"+a,{uid:a,number:b.directory[a].number,username:b.directory[a].name,firstname:"",lastname:""});dynamicUpdate()}}))})},!1)})})})});
|
||||
subjectManager.attach();contactManager=new inputPhoneContact($("article.contact-panel"),$("h4.add-contact"));contactManager.attach(dynamicUpdate);miniManager=new inputPhoneMini($("article.mini-relation-panel"),$("#nav-mini"));miniManager.attach(dynamicUpdate);ficheManager=new inputPhoneFiche($("article.relation-panel"),$("#nav-fiche"));ficheManager.attach(dynamicUpdate);importCallLog.addEventListener("change",function(a){api.send({path:"upload/call_log",file:importCallLog.files[0]},function(a){console.log(a);
|
||||
0==a.ModuleError&&(importCallLog.addClass("active"),a={path:"call_log/unserialize",phone_number:$("#subject_phone_number").value},api.send(a,function(a){console.log(a);if(0==a.ModuleError){for(var b=0;b<a.directory.length&&20>b;b++)lsi.set("contacts","form"+b,{uid:b,number:a.directory[b].number,username:a.directory[b].name,firstname:"",lastname:""});dynamicUpdate()}}))})},!1);clearAllButton.addEventListener("click",function(a){localStorage.clear();reload()},!1)})})})});
|
||||
|
|
114
view/js/input.js
114
view/js/input.js
|
@ -7,39 +7,74 @@
|
|||
|
||||
/* [1] Initialisation des utilitaires et variables
|
||||
=========================================================*/
|
||||
/* (1) Input de type fichier pour l'import */
|
||||
/* (1) Bouton pour effacer toutes les données */
|
||||
var clearAllButton = $('#clear-all');
|
||||
|
||||
/* (2) Input de type fichier pour l'import */
|
||||
var importCallLog = $('input#call_log-import[type="file"]');
|
||||
|
||||
/* (2) Initialisation des managers */
|
||||
/* (3) Initialisation des managers */
|
||||
var subjectManager;
|
||||
var contactManager;
|
||||
var miniManager;
|
||||
var ficheManager;
|
||||
|
||||
/* (3) Fonctions utiles */
|
||||
function dynamicUpdate(){
|
||||
console.log('DYNAMIC UPDATE: UPDATING');
|
||||
/* (4) Fonctions utiles */
|
||||
function dynamicUpdate(target){
|
||||
/* (0) Vérification de la cohérence de la @target
|
||||
---------------------------------------------------------*/
|
||||
console.log(target);
|
||||
var isSwitch = target.tagName == 'SPAN' && target.className == 'switch';
|
||||
var isSaveButton = target.tagName == 'INPUT' && target.type == 'submit';
|
||||
var isNavButton = target.tagName == 'SPAN' && (target.parentNode.id == 'nav-mini' || target.parentNode.id == 'nav-fiche');
|
||||
|
||||
// Si erreur, on retourne une erreur
|
||||
if( !isSwitch && !isSaveButton && ~isNavButton )
|
||||
return false;
|
||||
|
||||
/* (1) Gestion de l'échange de nom/prénom
|
||||
---------------------------------------------------------*/
|
||||
if( isSwitch ){
|
||||
console.log('> switch firstname <-> lastname');
|
||||
|
||||
/* (1) On récupère le formulaire parent */
|
||||
var currentForm = target.parentNode;
|
||||
|
||||
/* (2) On récupère Nom et Prénom */
|
||||
var firstname = currentForm.children[2];
|
||||
var lastname = currentForm.children[4];
|
||||
|
||||
/* (3) On échange leurs valeurs */
|
||||
var tmp = firstname.value;
|
||||
firstname.value = lastname.value;
|
||||
lastname.value = tmp;
|
||||
|
||||
|
||||
/* (1) On enregistre les MINI fiches relation */
|
||||
miniManager.fieldsToStorage();
|
||||
/* (2) Gestion de la mise à jour dynamique
|
||||
---------------------------------------------------------*/
|
||||
}else{
|
||||
console.log('> dynamic update');
|
||||
|
||||
/* (2) On enregister les FICHES relation */
|
||||
ficheManager.fieldsToStorage();
|
||||
/* (1) On enregistre les MINI fiches relation */
|
||||
miniManager.fieldsToStorage();
|
||||
|
||||
/* (3) On enregistre les CONTACTS */
|
||||
contactManager.fieldsToStorage();
|
||||
/* (2) On enregister les FICHES relation */
|
||||
ficheManager.fieldsToStorage();
|
||||
|
||||
/* (4) On synchronise les MINI avec les CONTACTS */
|
||||
miniManager.sync();
|
||||
/* (3) On enregistre les CONTACTS */
|
||||
contactManager.fieldsToStorage();
|
||||
|
||||
/* (5) On synchronise les FICHE avec les CONTACTS */
|
||||
ficheManager.sync();
|
||||
/* (4) On synchronise les MINI avec les CONTACTS */
|
||||
miniManager.sync();
|
||||
|
||||
/* (6) On affiche le tout */
|
||||
miniManager.storageToFields();
|
||||
ficheManager.storageToFields();
|
||||
contactManager.storageToFields();
|
||||
/* (5) On synchronise les FICHE avec les CONTACTS */
|
||||
ficheManager.sync();
|
||||
|
||||
/* (6) On affiche le tout */
|
||||
miniManager.storageToFields();
|
||||
ficheManager.storageToFields();
|
||||
contactManager.storageToFields();
|
||||
}
|
||||
}
|
||||
|
||||
// Vérifie qu'une seule valeur vaut TRUE et les autres false
|
||||
|
@ -55,19 +90,6 @@ function checkRadioValue(selectData){
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* [2] Inclusion des scripts externes et lancement
|
||||
=========================================================*/
|
||||
include('/js/includes/input-phone-subject.js', function(){
|
||||
|
@ -76,8 +98,8 @@ include('/js/includes/input-phone-mini.js', function(){
|
|||
include('/js/includes/input-phone-fiche.js', function(){
|
||||
|
||||
|
||||
/* [3] Gestion du formulaire du sujet
|
||||
=========================================================*/
|
||||
/* (1) Gestion du formulaire du sujet
|
||||
---------------------------------------------------------*/
|
||||
/* (1) On crée une instance du manager du sujet */
|
||||
subjectManager = new inputPhoneSubject(
|
||||
$('article.subject-panel [data-name="number"]'),
|
||||
|
@ -94,8 +116,8 @@ include('/js/includes/input-phone-fiche.js', function(){
|
|||
|
||||
|
||||
|
||||
/* [4] Gestion des formulaires de contact
|
||||
=========================================================*/
|
||||
/* (2) Gestion des formulaires de contact
|
||||
---------------------------------------------------------*/
|
||||
/* (1) On crée une instance du gestionnaire des CONTACTS */
|
||||
contactManager = new inputPhoneContact(
|
||||
$('article.contact-panel'),
|
||||
|
@ -107,8 +129,8 @@ include('/js/includes/input-phone-fiche.js', function(){
|
|||
|
||||
|
||||
|
||||
/* [5] Gestion des mini fiches relation
|
||||
=========================================================*/
|
||||
/* (3) Gestion des mini fiches relation
|
||||
---------------------------------------------------------*/
|
||||
/* (1) On crée une instance du gestionnaire des mini fiches relation */
|
||||
miniManager = new inputPhoneMini(
|
||||
$('article.mini-relation-panel'),
|
||||
|
@ -119,8 +141,8 @@ include('/js/includes/input-phone-fiche.js', function(){
|
|||
miniManager.attach(dynamicUpdate);
|
||||
|
||||
|
||||
/* [6] Gestion des fiches relation
|
||||
=========================================================*/
|
||||
/* (4) Gestion des fiches relation
|
||||
---------------------------------------------------------*/
|
||||
/* (1) On crée une instance du gestionnaire des fiches relation */
|
||||
ficheManager = new inputPhoneFiche(
|
||||
$('article.relation-panel'),
|
||||
|
@ -136,8 +158,8 @@ include('/js/includes/input-phone-fiche.js', function(){
|
|||
|
||||
|
||||
|
||||
/* [6] Gestion de l'import du fichier
|
||||
=========================================================*/
|
||||
/* (5) Gestion de l'import du fichier
|
||||
---------------------------------------------------------*/
|
||||
importCallLog.addEventListener('change', function(e){
|
||||
/* (1) On rédige la requête */
|
||||
var uploadRequest = {
|
||||
|
@ -188,6 +210,14 @@ include('/js/includes/input-phone-fiche.js', function(){
|
|||
}, false);
|
||||
|
||||
|
||||
/* (6) Gestion de l'effacement des données locales
|
||||
---------------------------------------------------------*/
|
||||
clearAllButton.addEventListener('click', function(e){
|
||||
localStorage.clear();
|
||||
reload();
|
||||
}, false);
|
||||
|
||||
|
||||
|
||||
}) }) }) });
|
||||
|
||||
|
|
Loading…
Reference in New Issue