Projet

Général

Profil

0001-grandlyon-glc-apply-custom-styles-to-checkboxes-5584.patch

Serghei Mihai (congés, retour 15/05), 13 août 2021 10:39

Télécharger (4,84 ko)

Voir les différences:

Subject: [PATCH] grandlyon-glc: apply custom styles to checkboxes (#55849)

 static/grandlyon-glc/_custom.scss             | 60 +++++--------------
 static/grandlyon-glc/_vars.scss               |  3 +
 .../authentic2/login_password_form.html       |  4 +-
 .../authentic2_idp_oidc/authorization.html    | 10 ++--
 4 files changed, 24 insertions(+), 53 deletions(-)
static/grandlyon-glc/_custom.scss
607 607
	}
608 608
}
609 609

  
610
/* customize "remember me" checkbox */
611
#id_remember_me_p, div.a2-oidc-authorization-form--do-not-ask-again, div.django-checkbox-input {
612
	position: relative;
613
	div.title {
614
		position: relative;
615
		z-index: 100;
610
.django-checkbox-input,
611
.CheckboxWidget,
612
.CheckboxesWidget {
613
	.title {
614
		padding-top: 0.25ex;
616 615
	}
617
	div.title label {
618
		padding-left: 1.5em;
619
	}
620
	input[type="checkbox"] {
621
		position: absolute;
622
		left: -99999px;
623
		&:checked {
624
			+ div.hint {
625
				&::before {
626
					content: '';
627
					position: absolute;
628
					top: 5px;
629
					left: 2px;
630
					background-color: #000000;
631
					transition: all .2s;
632
					width: 11px;
633
					height: 11px;
634
				}
635
			}
636
		}
637
	}
638
	div.content {
639
		&::before {
640
			position: absolute;
641
			left: 0;
642
			top: 3px;
643
			content: '';
644
			display: block;
645
			border: 1px solid #777777;
646
			background: #ffffff;
647
			width: 15px;
648
			height: 15px;
649
		}
616
	input + span::before {
617
		height: 15px;
618
		width: 15px;
619
		background: white;
650 620
	}
651 621
}
652 622

  
653
#id_remember_me_p, div.a2-oidc-authorization-form--do-not-ask-again {
654
	div.content {
655
		div.hint {
656
			text-indent: -9999px;
657
			width: 11px;
658
		}
659
	}
623
.django-checkbox-input input + span::after,
624
.CheckboxWidget input + span::after,
625
.CheckboxesWidget input + span::after {
626
	width: 11px;
627
	height: 11px;
660 628
}
static/grandlyon-glc/_vars.scss
30 30
$data_uri_arrow-down: "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDQuOCA0NDQuOCI+PHBhdGggZD0iTTI0OC4xIDM1Mkw0MzQgMTY1LjljNy4yLTYuOSAxMC44LTE1LjQgMTAuOC0yNS43IDAtMTAuMy0zLjYtMTguOC0xMC44LTI1LjdsLTIxLjQtMjEuN2MtNy03LTE1LjYtMTAuNi0yNS43LTEwLjYtOS45IDAtMTguNiAzLjUtMjYgMTAuNkwyMjIuNCAyMzEuNSA4My43IDkyLjhjLTctNy0xNS42LTEwLjYtMjUuNy0xMC42LTkuOSAwLTE4LjYgMy41LTI2IDEwLjZsLTIxLjQgMjEuN2MtNyA3LTEwLjYgMTUuNi0xMC42IDI1LjdzMy41IDE4LjcgMTAuNiAyNS43TDE5Ni40IDM1MmM3LjQgNyAxNi4xIDEwLjYgMjYgMTAuNiAxMC4xIDAgMTguNy0zLjUgMjUuNy0xMC42eiIvPjwvc3ZnPg==";
31 31

  
32 32
$or-separator: true;
33

  
34
$widget-unique-checkbox-position: left;
35
$widget-custom-radio-checkbox: true;
templates/variants/grandlyon-glc/authentic2/login_password_form.html
7 7
  {% csrf_token %}
8 8
  {% include "gadjo/widget.html" with field=form.username %}
9 9
  {% include "gadjo/widget.html" with field=form.password %}
10
  <div class="widget" id="id_remember_me_p">
10
  <div class="widget django-checkbox-input" id="id_remember_me_p">
11 11
    <div class="title">
12 12
      <label for="id_remember_me">Rester connecté</label>
13 13
    </div>
14 14
    <div class="content">
15 15
      {{ form.remember_me }}
16
      <div class="hint">
17
      </div>
18 16
    </div>
19 17
  </div>
20 18
{% block buttons %}
templates/variants/grandlyon-glc/authentic2_idp_oidc/authorization.html
28 28
  <div class="a2-authorization-form">
29 29
    <form method="post">
30 30
      {% csrf_token %}
31
      <div class="a2-oidc-authorization-form--do-not-ask-again">
31
      <div class="a2-oidc-authorization-form--do-not-ask-again django-checkbox-input">
32 32
        <div class="title">
33 33
          <label for="id_do_not_ask_again">Ne plus redemander</label>
34 34
        </div>
35
       <div class="content">
36
         <input type="checkbox" id="id_do_not_ask_again" name="do_not_ask_again" />
37
         <div class="hint"></div>
35
        <div class="content">
36
          <label>
37
            <input type="checkbox" id="id_do_not_ask_again" name="do_not_ask_again" />
38
            <span></span>
39
          </label>
38 40
       </div>
39 41
    </div>
40 42
    <p>
41
-