From 1d0f8933be018003e3ed0a9f921f58abc17d7850 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Thu, 15 Mar 2018 15:15:12 +0100 Subject: [PATCH] [webpack.ue.manage] SCSS for adding/removing formations to an existing cours|td|tp (must implement now in JS) --- public_html/asset/svg/plus.svg | 45 ++++++++++++++++++ webpack.config.js | 12 ++--- webpack/component/ue/manage.vue | 48 +++++++++++++++++-- webpack/scss/global.scss | 4 ++ webpack/scss/global/tag.scss | 81 ++++++++++++++++++++++++++++++++- 5 files changed, 180 insertions(+), 10 deletions(-) create mode 100644 public_html/asset/svg/plus.svg diff --git a/public_html/asset/svg/plus.svg b/public_html/asset/svg/plus.svg new file mode 100644 index 0000000..b95466e --- /dev/null +++ b/public_html/asset/svg/plus.svg @@ -0,0 +1,45 @@ + +image/svg+xml \ No newline at end of file diff --git a/webpack.config.js b/webpack.config.js index db9de93..2a75ec5 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -43,7 +43,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'home@[hash].js' + filename: 'home@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false @@ -55,7 +55,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'teacher@[hash].js' + filename: 'teacher@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false @@ -67,7 +67,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'ue@[hash].js' + filename: 'ue@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false @@ -79,7 +79,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'fiche@[hash].js' + filename: 'fiche@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false @@ -91,7 +91,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'settings@[hash].js' + filename: 'settings@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false @@ -103,7 +103,7 @@ module.exports = [ { output: { path: path.resolve(__dirname, './public_html/js/bundle'), publicPath: '/js/bundle/', - filename: 'login@[hash].js' + filename: 'login@0.js' }, module: mod_common, devtool: (process.env.NODE_ENV==='development') ? '#eval-source-map' : false diff --git a/webpack/component/ue/manage.vue b/webpack/component/ue/manage.vue index 2ccad27..8b4541f 100644 --- a/webpack/component/ue/manage.vue +++ b/webpack/component/ue/manage.vue @@ -25,7 +25,21 @@
{{ c.idProf ? `${c.firstName} ${c.lastName}` : 'Aucun enseignant affecté' }}
{{ c.volume }}
- {{ gstore.form_by_id(f).labelForm || '???' }} +
+ {{ gstore.form_by_id(f).labelForm || '???' }} + +
+ +
+ + +
@@ -42,7 +56,21 @@
{{ td.idProf ? `${td.firstName} ${td.lastName}` : 'Aucun enseignant affecté' }}
{{ td.volume }}
- {{ gstore.form_by_id(f).labelForm || '???' }} +
+ {{ gstore.form_by_id(f).labelForm || '???' }} + +
+ +
+ + +
@@ -59,7 +87,21 @@
{{ tp.idProf ? `${tp.firstName} ${tp.lastName}` : 'Aucun enseignant affecté' }}
{{ tp.volume }}
- {{ gstore.form_by_id(f).labelForm || '???' }} +
+ {{ gstore.form_by_id(f).labelForm || '???' }} + +
+ +
+ + +
diff --git a/webpack/scss/global.scss b/webpack/scss/global.scss index 286ed28..2c3550a 100644 --- a/webpack/scss/global.scss +++ b/webpack/scss/global.scss @@ -45,3 +45,7 @@ a{ color: $secondary-color; } +/* (6) pointer cursor (2 times the class to increase priority) */ +.pointer.pointer{ + cursor: pointer; +} \ No newline at end of file diff --git a/webpack/scss/global/tag.scss b/webpack/scss/global/tag.scss index 736c44c..de893e9 100644 --- a/webpack/scss/global/tag.scss +++ b/webpack/scss/global/tag.scss @@ -14,10 +14,17 @@ flex-wrap: wrap; /* (9.1) inner tags */ - & > span.tag{ + & .tag, + & [data-action] .tag + span[data-remove], + & [data-action] .tag + span[data-create]{ + display: inline-block; + position: relative; + padding: .2em .5em; + margin-top: .2em; margin-right: .5em; + border: 1px solid lighten($form-neutral-color, 5%); border-radius: 3px; @@ -32,6 +39,78 @@ &.invalid{ border-color: lighten($form-invalid-color, 20%); } &.search{ border-color: lighten($form-search-color, 10%); } + + } + + /* (9.2) container for action tags */ + & [data-action]{ + + display: flex; + flex-direction: row; + justify-content: center; + flex-wrap: nowrap; + + .tag{ + + border-radius: 3px 0 0 3px; + margin-right: 0; + + /* (9.2.1) Removable tags */ + & + span[data-remove]{ + display: inline-block; + position: relative; + width: .8em; + height: 1.3em; + + border-left: 0; + border-radius: 0 3px 3px 0; + + background: #fff url('/asset/svg/cross.svg@aaaaaa') center center no-repeat; + background-size: 40% auto; + + cursor: pointer; + z-index: 102; + + &:hover{ background-image: url('/asset/svg/cross.svg@#{$rd-form-invalid-color}'); } + + } + + /* (9.2.2) NEW tags */ + & + span[data-create]{ + display: inline-block; + position: relative; + width: .8em; + height: 1.3em; + + border-left: 0; + border-radius: 0 3px 3px 0; + + background: #fff url('/asset/svg/plus.svg@aaaaaa') center center no-repeat; + background-size: 40% auto; + + cursor: pointer; + z-index: 102; + + &:hover{ background-image: url('/asset/svg/plus.svg@#{$rd-form-valid-color}'); } + + } + + } + + } + + /* (9.3) select tag */ + & select.tag{ + height: 1.8em; + margin-left: 0; + padding-right: 1em; + + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + + background: transparent url('/asset/svg/down_arrow.svg@bbbbbb') right .5em bottom .1em no-repeat; + background-size: auto 80%; } } \ No newline at end of file