Agregada opacidad a grupos secundarios cuando se selecciona un grupo.

add-license-1
Araozu 2020-02-07 19:54:30 -05:00
parent 5f2042932c
commit 472068a69b
5 changed files with 64 additions and 7 deletions

View File

@ -6,7 +6,7 @@
)
input.marcador_curso(type="checkbox" v-model="cursoAgregado")
span.ancho {{ curso.abreviado }} > 
| {{ curso.nombre }} {{ nombreCurso }}
| {{ curso.nombre }}
table.datos
tr
bloque(v-for="(grupos, profesor) in teoria"

View File

@ -4,7 +4,7 @@
| {{ profesor }}
span.ancho.cursor_click(
v-for="grupo in grupos"
:class="obtenerClase(grupo)"
:class="[obtenerClase(grupo), obtenerClaseGeneral()]"
@mouseenter="resaltarCeldasGrupo(grupo)"
@mouseleave="quitarResaltadoGrupo(grupo)"
@click="toggleActivo(grupo)"
@ -44,6 +44,10 @@
obtenerClase: (grupo) ->
obtenerClaseGrupoCurso @nombreAño, @abreviado, grupo, @esLab
obtenerClaseGeneral: () ->
nombreAñoF = @nombreAño.substring 0, (@nombreAño.indexOf " ")
"_#{ nombreAñoF }_#{ @abreviado }"
resaltarCeldasGrupo: (grupo) ->
resaltarGrupoCurso @nombreAño, @abreviado, grupo, @esLab

View File

@ -55,7 +55,10 @@
#
</script>
<style scoped lang="sass">
<style lang="sass">
.elementoOpaco
opacity: 0.3
//
</style>

View File

@ -38,6 +38,18 @@ resaltarElemento = (elemento, esLab, etiqueta = "resaltado") =>
opacarElemento = (elemento) =>
elemento.className += " elementoOpaco"
desopacarElemento = (elemento) =>
clases = elemento.className
clasesNueva = clases.replace "elementoOpaco", ""
elemento.className = clasesNueva
export obtenerClaseGrupoCurso = (nombreAño, cursoAbreviado, grupo, esLab) =>
nombreAñoF = nombreAño.substring 0, (nombreAño.indexOf " ")
"_#{ nombreAñoF }_#{ cursoAbreviado }_#{ (if esLab then 'L' else '') + grupo }"
@ -86,17 +98,55 @@ export desregistrarCurso = (nombreAño, cursoAbreviado, grupo, esLab) =>
export activarGrupoCurso = (nombreAño, cursoAbreviado, grupo, esLab) =>
clase = obtenerClaseGrupoCurso nombreAño, cursoAbreviado, grupo, esLab
claseObjetivo = obtenerClaseGrupoCurso nombreAño, cursoAbreviado, grupo, esLab
claseGeneral = do =>
nombreAñoF = nombreAño.substring 0, (nombreAño.indexOf " ")
"_#{ nombreAñoF }_#{ cursoAbreviado }"
elementos = document.getElementsByClassName clase
elementos = document.getElementsByClassName claseGeneral
elementosObjetivo = []
elementosAOpacar = []
for elemento in elementos
clases = elemento.classList
i = 0
agregarAOpaco = no
while i < clases.length
claseActual = clases[i]
if claseActual is claseObjetivo
elementosObjetivo.push elemento
agregarAOpaco = no
break
else
if esLab and claseActual is "celda__lab"
agregarAOpaco = yes
else if !esLab and claseActual is "celda__teoria"
agregarAOpaco = yes
i++
if agregarAOpaco then elementosAOpacar.push elemento
console.log elementosObjetivo
console.log elementosAOpacar
opacarElementos = no
for elemento in elementosObjetivo
estaActivo = ((elemento.getAttribute "activo") ? "no") is "si"
if estaActivo
removerResaltadoElemento elemento, "activo"
elemento.setAttribute "activo", "no"
else
opacarElementos = yes
resaltarElemento elemento, esLab, "activo"
elemento.setAttribute "activo", "si"
for elemento in elementosAOpacar
if opacarElementos
opacarElemento elemento
else
desopacarElemento elemento

View File

@ -25,7 +25,7 @@
horarioUsuario: -> @$store.state.horarioUsuario
created: ->
vm = this
resRaw = await fetch "/horarios/2018_2_fps_epis.yaml"
resRaw = await fetch "/horarios/2019_2_fps_epis.yaml"
res = YAML.parse await resRaw.text()
vm.datos = res