From cde96d71d2b76ca728bafae3e58493fc58b51315 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Wed, 20 Jan 2021 18:46:23 +0500 Subject: [PATCH 01/19] About page - added team section --- weblate_web/static/style-rtl.css | 68 ++++++++++++++++++++++++++++++++ weblate_web/static/style.css | 67 +++++++++++++++++++++++++++++++ weblate_web/templates/about.html | 30 ++++++++++++++ 3 files changed, 165 insertions(+) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index 492ab39ed5..fbf3dc3d54 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4110,3 +4110,71 @@ input.fullwidth { font-size: 10px; } } + +/* Your Weblate Team - About Us */ + +.content-p { + width: 69%; + display: inline-block; + padding-right: 10px; + text-align: right; +} + +.content-p p { + font-weight: bold; +} + +.weblate-team-content img { + width: 80px; + height: 80px; + border-radius: 50%; + position: relative; + top: -15px; +} + +.weblate-team-content { + display: table-cell; + padding-bottom: 90px; + padding-top: 20px; +} + +.weblate-team { + display: table; + width: 78%; + margin: 0 auto; +} + +@media (max-width: 1250px) { + .content-p { + width: 58%; + } +} + +@media (max-width: 889px) { + .content-p { + width: 65%; + } + + .weblate-team-content img { + width: 65px; + height: 65px; + border-radius: 50%; + top: -28px; + } + + .weblate-team { + width: 90%; + } +} + +@media (max-width: 790px) { + .content-p { + width: 100%; + display: unset !important; + text-align: center; + } + + .weblate-team-content { + text-align: center; + } +} diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 90ad251cfc..76b09f35fb 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4102,3 +4102,70 @@ input.fullwidth { font-size: 10px; } } + +/*Your Weblate Team - About us */ +.content-p { + width: 69%; + display: inline-block; + padding-left: 10px; + text-align: left; +} + +.content-p p { + font-weight: bold; +} + +.weblate-team-content img { + width: 80px; + height: 80px; + border-radius: 50%; + position: relative; + top: -15px; +} + +.weblate-team-content { + display: table-cell; + padding-bottom: 90px; + padding-top: 20px; +} + +.weblate-team { + display: table; + width: 78%; + margin: 0 auto; +} + +@media (max-width: 1250px) { + .content-p { + width: 58%; + } +} + +@media (max-width: 889px) { + .content-p { + width: 65%; + } + + .weblate-team-content img { + width: 65px; + height: 65px; + border-radius: 50%; + top: -28px; + } + + .weblate-team { + width: 90%; + } +} + +@media (max-width: 790px) { + .content-p { + width: 100%; + display: unset !important; + text-align: center; + } + + .weblate-team-content { + text-align: center; + } +} diff --git a/weblate_web/templates/about.html b/weblate_web/templates/about.html index 4d4574df9f..85652d758b 100644 --- a/weblate_web/templates/about.html +++ b/weblate_web/templates/about.html @@ -44,6 +44,36 @@

{% trans "Weblate grows and the future is open to new opportunities." %}

+

{% trans "Your Weblate Team" %}

+
+
+ Quotes +
+

MICHAL CIHAR

+
+ Master of the code & head of custom or large scale solutions. +
+
+
+ Quotes +
+

BENJAMIN ALAN JAMIE

+
+ Community manager & support guru helping with smooth workflows. +
+
+
+ Quotes +
+

VITA VALKA

+
+ Interface & graphics designer optimizing weblate user happiness. +
+
+ + +
+

{% trans "Contributors and translators united" %}

{% for contributor in contributors %} From 8586925b768b6532f7479e81c978f1b2a9eb1314 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Thu, 21 Jan 2021 11:50:33 +0500 Subject: [PATCH 02/19] About page - added team section --- weblate_web/static/style-rtl.css | 1 + weblate_web/static/style.css | 1 + weblate_web/templates/about.html | 18 +++++++++--------- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index fbf3dc3d54..9e563f68f5 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4122,6 +4122,7 @@ input.fullwidth { .content-p p { font-weight: bold; + text-transform: uppercase; } .weblate-team-content img { diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 76b09f35fb..7dffac90b4 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4113,6 +4113,7 @@ input.fullwidth { .content-p p { font-weight: bold; + text-transform: uppercase; } .weblate-team-content img { diff --git a/weblate_web/templates/about.html b/weblate_web/templates/about.html index 85652d758b..db4c79e36c 100644 --- a/weblate_web/templates/about.html +++ b/weblate_web/templates/about.html @@ -47,27 +47,27 @@

{% trans "Weblate grows and the future is open to new opportunities." %}

{% trans "Your Weblate Team" %}
- Quotes + Michal Čihař
-

MICHAL CIHAR

+

{% trans "Michal Čihař" %}


- Master of the code & head of custom or large scale solutions. + {% trans "Master of the code & head of custom or large scale solutions." %}
- Quotes + Benjamin Alan Jamie
-

BENJAMIN ALAN JAMIE

+

{% trans "Benjamin Alan Jamie" %}


- Community manager & support guru helping with smooth workflows. + {% trans "Community manager & support guru helping with smooth workflows." %}
- Quotes + Víťa Válka
-

VITA VALKA

+

{% trans "Víťa Válka" %}


- Interface & graphics designer optimizing weblate user happiness. + {% trans "Interface & graphics designer optimizing weblate user happiness." %}
From eb3085f9fe641b9c91b1a9d5b7daa7559476bed7 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Fri, 22 Jan 2021 11:34:44 +0500 Subject: [PATCH 03/19] About page - added team section --- weblate_web/static/style-rtl.css | 2 +- weblate_web/static/style.css | 2 +- weblate_web/templates/about.html | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index 9e563f68f5..8541bf2b33 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4141,7 +4141,7 @@ input.fullwidth { .weblate-team { display: table; - width: 78%; + width: 82%; margin: 0 auto; } diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 7dffac90b4..5796938867 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4132,7 +4132,7 @@ input.fullwidth { .weblate-team { display: table; - width: 78%; + width: 82%; margin: 0 auto; } diff --git a/weblate_web/templates/about.html b/weblate_web/templates/about.html index db4c79e36c..4f0b15cdcb 100644 --- a/weblate_web/templates/about.html +++ b/weblate_web/templates/about.html @@ -49,25 +49,25 @@

{% trans "Your Weblate Team" %}

Michal Čihař
-

{% trans "Michal Čihař" %}

+

Michal Čihař


- {% trans "Master of the code & head of custom or large scale solutions." %} + {% trans "Master of the idea and code, leading the development, custom and large scale solutions." %}
Benjamin Alan Jamie
-

{% trans "Benjamin Alan Jamie" %}

+

Benjamin Alan Jamie


- {% trans "Community manager & support guru helping with smooth workflows." %} + {% trans "Community manager, support guru, helping with smooth workflows; and the one to talk sales." %}
Víťa Válka
-

{% trans "Víťa Válka" %}

+

Víťa Válka


- {% trans "Interface & graphics designer optimizing weblate user happiness." %} + {% trans "Interface and graphics designer elevating user happiness, continually optimizing Weblate." %}
From 680b874282b53a33ed67eac573f7a3ba0aa67da4 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Mon, 1 Feb 2021 20:17:12 +0500 Subject: [PATCH 04/19] User page - service section design changes --- weblate_web/models.py | 34 +- weblate_web/static/img/ArrowR.png | Bin 0 -> 392 bytes weblate_web/static/img/Shield.png | Bin 0 -> 901 bytes weblate_web/static/img/delete.png | Bin 0 -> 254 bytes weblate_web/static/img/delete.svg | 13 + weblate_web/static/img/donations-picture.png | Bin 0 -> 118922 bytes weblate_web/static/img/dowload.png | Bin 0 -> 495 bytes weblate_web/static/style-rtl.css | 488 +++++++++++++++++-- weblate_web/static/style.css | 487 ++++++++++++++++-- weblate_web/templates/snippets/payment.html | 51 +- weblate_web/templates/snippets/service.html | 193 +++++--- weblate_web/templates/user.html | 100 ++-- weblate_web/templatetags/date_diff.py | 9 + 13 files changed, 1143 insertions(+), 232 deletions(-) create mode 100644 weblate_web/static/img/ArrowR.png create mode 100644 weblate_web/static/img/Shield.png create mode 100644 weblate_web/static/img/delete.png create mode 100644 weblate_web/static/img/delete.svg create mode 100644 weblate_web/static/img/donations-picture.png create mode 100644 weblate_web/static/img/dowload.png create mode 100644 weblate_web/templatetags/date_diff.py diff --git a/weblate_web/models.py b/weblate_web/models.py index 316253c8a8..bd844cb15c 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -507,17 +507,43 @@ def expires(self): def get_suggestions(self): if not self.support_subscriptions.exists(): - yield "basic", _("Basic support") + yield "basic", _( + "Basic support" + ), "This will give you more"\ + " of this and that. "\ + "You can't resist,"\ + "because it is a huge deal.",\ + "img/Support-Basic.svg", "Get more support" if ( not self.hosted_subscriptions.exists() and not self.shared_subscriptions.exists() ): if not self.premium_subscriptions.exists(): - yield "premium", _("Extended support") + yield "premium", _( + "Premium support" + ), "This will give you more "\ + "of this and that. " \ + "You can't resist,"\ + "because it is a huge deal.", \ + "img/Support-Plus.svg", "Get more support" if not self.extended_subscriptions.exists(): - yield "extended", _("Extended support") + yield "extended", _( + "Extended support" + ), "This will give you " \ + "more of this and that. " \ + "You can't resist," \ + "because it is a huge deal.", \ + "img/Support-Premium.svg", \ + "Get more support" if not self.backup_subscriptions.exists(): - yield "backup", _("Backup service") + yield "backup", _( + "Backup service" + ), "This will give you " \ + "more of this and that. " \ + "You can't resist," \ + "because it is a huge deal.",\ + "img/Support-Backup.svg", \ + "Get daily backups" def update_status(self): status = "community" diff --git a/weblate_web/static/img/ArrowR.png b/weblate_web/static/img/ArrowR.png new file mode 100644 index 0000000000000000000000000000000000000000..6b4faf26ef705e0db99bae8d71ad32483bf5e497 GIT binary patch literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^oIuRa!3HGFPCVrWQjEnx?oJHr&dIz4a$Hg)JkxxA z8MJ_G4hF{dOa>N^5+IfWVg?501&j>LK$;OGwtxvP%ejCV&gKUxT)>nA()G#H#W6%f zG&v;Zn%2Mn@{d3L*Ew^OU-{H};{-;Z|No7y{r~^}{=|>x@BjUzZDqP~MPfqIgo!#y zDJgeYLp1ul6_q`fANu!GhR1(?K8scfb5;fCmRo{1voam`G~t9UTuN3&zpCHb3K ztxwlYg;bxuU_p~ef^X`5k}c_D>kgj z6+68Df2V`>KEr?MCu#&@jXCpVofw_DE=prs*xJS3bUS1BHU8 LtDnm{r-UW|7siJE literal 0 HcmV?d00001 diff --git a/weblate_web/static/img/Shield.png b/weblate_web/static/img/Shield.png new file mode 100644 index 0000000000000000000000000000000000000000..4b68a15632ad64a7a9d9978e9b0d72f64515a831 GIT binary patch literal 901 zcmV;01A6?4P)62jJ+lNB*LF|Jd zf?z`s^hMCpv`?|pP}`(254+l?37eX2cH^!)nVsF4*_}IcSTYeXkP3g&hc(Tn+ZbEGM+xsNq|})Fu&%#*Be)UJ@ZD-fnG!T zB~_@6O20gRk}11CIsqX7`Mr7|P;>)z+2ZdLf=i#hk~n$x$S!qcP{ZrJQ0gK1I905_ zd%w)hP+*Y}5>T>%EFWZKeEExiZN5)Z>elJrJzeT+hhB&oAH3X-;Vvx-EZa6TzXCm` zVK(dHr%V+y`I?il{NF7vSl}Tb*FyvX;BqikKeS!`Y>-x_5E2c}@kN!EykM>1 z2G0$qDFo|Y0J9bpY0(LmmM#Ce!P-=Utj$qyf()(t;?CV-JvwM{7h77?9EIR-(?_`$ z&eIqpKhNa7jd-#>I3_3ThnQQdNxC;_GOqmgN8Y=;P^xdcs$^V&WHp=j7LzgMmaGi9 z3ZJ;XSlL!_(QVQd{Frf&wf)O6m4HeS=rh=btAE;7KDv<4M%&0yuu`bu%DuAN8)xTb zsgY`Q$LPal%OCr8*4(VFHK3%YQUV%NaBglL8H=CZq0^jbNRZrum%7xk@l^Tt4@;YL zpF*!^r;6{>Hoi-h?+kUauNo59)H7Wn=xn1$znm(#f5~BNsZN5(q=B6pQdt)#rylTj zjeaV7-q@cenB1>^gDp8+y!pxXRb(u`NjDS%i~<8a8q%vSj^4=0^?9q$VE1HR!~UnV zekd@UP^V2VJowJltUH}`B7bL`p?`;l$+V5pYdOEJ;B1;g8AoCg3ax21l>0 z-aa>P!>n?Q-74bq$^2X(#Nbe;I=vMr>T|0fib4RXCJ#KE=n&Pft##|0q@kUXJ^C-T brU7^aetD3&z!|&K00000NkvXXu0mjfyce?N literal 0 HcmV?d00001 diff --git a/weblate_web/static/img/delete.png b/weblate_web/static/img/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..7cd9c54c59fb359e31d6f63f6608356965059463 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^d_XM3!3HF=W8NDADaPU;cPEB*=VV?2IWDOYo@u_m z3|c@o2Loe!CIbsd2@p#GF#`kh0!9XAAk7F8TfhXD + + + 7434ADBA-63E9-4B19-A34C-99D5C7B0B403 + Created with sketchtool. + + + + + + + + \ No newline at end of file diff --git a/weblate_web/static/img/donations-picture.png b/weblate_web/static/img/donations-picture.png new file mode 100644 index 0000000000000000000000000000000000000000..1563dfff4b616df469305c0c10985330ecc36556 GIT binary patch literal 118922 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 literal 0 HcmV?d00001 diff --git a/weblate_web/static/img/dowload.png b/weblate_web/static/img/dowload.png new file mode 100644 index 0000000000000000000000000000000000000000..ab39f4afaab7ba9ad5266754f49b3dc667e82097 GIT binary patch literal 495 zcmVhaDd-uQL8h>8EN0G1@SYRf2{}Es{TZ5)va=L^GTy z*uUI~86i_+P>qhpo=_1{`DQE36;xP?Fq4v6FTjpMHySHm-aJ_^k{T9(DU3TNOe%aT z%5VHu;jIW?4ITn#z=s=&O_&E3fyZgR58O@j5nvqXmTBcnYO9a^CEiUJyJz)?D@#%bU+@DkYTkyOP@8T<*%B_c9m+xKIs)<|$8 zl3Hg}ME-;TYyq>tY7;?Ib?QXVfcL-?U^o#SH#s|rXWbS1aSE&hYrrdS)|Q{}%1NH5 l5;ox+cn3TJo;G^G*)@n8hxe8VGGPD!002ovPDHLkV1ntW&qM$K literal 0 HcmV?d00001 diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index 8541bf2b33..758b4d89c9 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4111,71 +4111,469 @@ input.fullwidth { } } -/* Your Weblate Team - About Us */ +.testimonial { + width: 365px; + border-radius: 30px; + background-color: #ffffff; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1); + margin-left: 10px; +} -.content-p { - width: 69%; - display: inline-block; - padding-right: 10px; +.icon-review { text-align: right; } - -.content-p p { - font-weight: bold; - text-transform: uppercase; +.icon-review img { + margin-right: 50px; +} +.icon-review p { + margin-right: 35px; + margin-top: -25px; + width: 70%; + font-size: 15px; + line-height: 18px; + letter-spacing: 0.5px; + color: #2a3744; } -.weblate-team-content img { - width: 80px; - height: 80px; +.circle-user { + width: 40px; + height: 40px; + border-radius: 50%; + position: relative; + right: 32px; + margin-top: 20px; +} +.circle-user img { + margin: 0px; border-radius: 50%; +} + +.icon-user { + display: flex; + text-align: right; + padding-bottom: 25px; +} +.content-user { + margin-top: 20px; + margin-right: 45px; +} +.content-user a { + color: #1fa385; + line-height: 23px; + text-decoration: underline; +} +.content-logo { + margin: 0px !important; +} + +.slider-slide { + display: -webkit-flex; + display: flex; + -webkit-align-items: center; + align-items: center; + -webkit-justify-content: center; + justify-content: center; +} + +.simple-slider { + height: 400px; +} + +.simple-slider .slider-btn.slider-btn-prev { + left: 11px !important; + background-position: left !important; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1) !important; + background: white !important; + border-radius: 50% !important; + width: 50px !important; + height: 50px !important; +} + +.simple-slider .slider-btn.slider-btn-next { + right: 4px !important; + background-position: right !important; + border-radius: 50% !important; + width: 50px !important; + height: 50px !important; + background: white !important; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1) !important; +} + +.simple-slider .slider-btn.slider-btn-next img { + padding: 18px; + margin: 0px; +} + +.simple-slider .slider-btn.slider-btn-prev img { + padding: 18px; + margin: 0px; +} + +/* Services CSS */ + +/* Services CSS (Button Sizes) */ + +.med { + min-width: 140px !important; + min-height: 50px !important; +} + +.med1 { + min-width: 120px !important; + min-height: 50px !important; +} + +.med2 { + display: none; +} + +.med3 { + min-width: 100px !important; + min-height: 50px !important; +} +.med4 { + min-width: 150px !important; + min-height: 50px !important; +} + +.med5 { + min-width: 170px !important; + min-height: 50px !important; +} + +/* Services CSS (More Weblate Grid) */ + +.inner-grid { + display: grid; + grid-template-columns: auto auto auto; + grid-column-gap: 0px; + grid-row-gap: 25px; +} + +.grid-item2 p { + color: #2e344b; + font-size: 18px; + font-weight: 600; + letter-spacing: 0; + line-height: 30px; +} + +.grid-item2 t { + color: #2e354a; + font-size: 16px; + letter-spacing: 0; + line-height: 10px; +} + +.grid-item1 { + padding-top: 5px; +} + +.grid-item2 { + padding-right: 15px; +} + +.grid-item3 { + padding-top: 5px; +} + +/* Services CSS (Inputs and placeholders) */ + +input[type="email"] { + height: 50px; + width: 70%; + border-radius: 5px 5px 0 0; + background-color: #e9eaec; + border-bottom: 2px solid #c4c6cb; + border-top: none; + border-right: none; + border-left: none; + padding: 13px 5px; +} + +::placeholder { + color: #bfc3c7; + font-size: 18px; + letter-spacing: 0; + line-height: 23px; + padding-right: 10px; +} + +input.fullwidth { + box-sizing: border-box; + height: 50px; + width: 100%; + border: 2px solid #bfc3c7; + border-radius: 5px; +} + +/* Services CSS (Users section) */ + +.user-slot { + height: 60px; + width: 330px; + border: 1px solid #00d2e6; + border-radius: 30px; + margin-bottom: 10px; + opacity: 0.8; + position: relative; +} + +.user-slot-content p { + color: #1fa385; + font-size: 14px; + letter-spacing: 0.86px; + line-height: 0px !important; + padding-bottom: 3px; +} + +.user-slot-content t { + color: #2a3744; + font-size: 17px; + letter-spacing: 0; + line-height: 0px !important; +} + +.user-img { position: relative; - top: -15px; + top: -14px; + right: 288px; +} + +.user-slot-content { + position: relative; + top: 19px; + right: 30px; +} + +/* Services CSS (Payments Section) */ + +.payment-listing { + border-bottom: 1px solid #e9eaec; +} + +.payment-listing:last-child { + border-bottom: none; +} + +/* Services CSS (Services) */ + +.service-variant { + display: flex; + justify-content: space-between; + height: 120px; + align-items: center; +} +.service-variant p { + color: #2b3646; + font-size: 40px; + letter-spacing: -1px; + line-height: 44px; + padding-right: 40px; + padding-top: 10px; } -.weblate-team-content { - display: table-cell; - padding-bottom: 90px; +.service-time { + display: grid; + text-align: center; padding-top: 20px; + padding-left: 40px; + color: #bfc3c7; + font-size: 17px; } -.weblate-team { - display: table; - width: 82%; +/* Services CSS (Custom paddings, styles and margins) */ + +.bdr-btm { + border-bottom: none !important; +} + +.style { + padding-top: 0px !important; + padding-bottom: 0px !important; +} + +.pt-pb { + padding-top: 0px !important; + padding-bottom: 0px !important; +} + +.pt-1 { + padding-top: 22px !important; +} + +.style6 > div { + font-size: 18px !important; + line-height: 30px !important; + color: #2c3548; + padding-top: 15x; + padding-bottom: 20px; +} + +.style2 t { + font-size: 16px; + line-height: 30px; + padding-right: 21px; + font-weight: 600; + letter-spacing: 0; +} + +.pl-1 { + font-size: 16px; + padding-right: 20px; +} + +/* Services CSS (Days check color) */ + +.grey { + color: #bfc3c7 !important; + font-size: 16px; +} + +.orange { + color: #f6664c !important; + font-size: 16px; +} + +/* For change in font size of payments */ +.payment-font-size { + font-size: 16px !important; +} + +.payment-font-size a { + padding-right: 40px; + text-decoration: none !important; +} + +.payment-font-size a img { + position: relative; + top: 1px; + padding-right: 25px; +} + +/* User.html CSS */ + +/* User.html CSS(Service Title) */ + +.updated-service-title { + direction: ltr; +} + +.updated-service-title span { + color: #00a481; + font-size: 16px; + margin-left: 40.5px; +} + +.updated-service-title span a { + color: #00a481; + font-size: 16px; + letter-spacing: 0; + line-height: 20px; +} + +.updated-service-title span img { + height: 15px; + width: 10px; + position: relative; + top: 3px; + margin-right: 5px; +} + +/* User.html CSS(Donation Box) */ + +.payment-form-donationbox { + height: 100px; + width: 100%; + max-width: 530px; + border-radius: 20px; + background-color: #ffffff; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1); margin: 0 auto; + display: flex; + align-items: center; + justify-content: center; } -@media (max-width: 1250px) { - .content-p { - width: 58%; - } +.payment-form-donationbox a { + min-width: 0px; } -@media (max-width: 889px) { - .content-p { - width: 65%; - } +.line-right-donationbox { + font-size: 18px; + padding-left: 30px; +} - .weblate-team-content img { - width: 65px; - height: 65px; - border-radius: 50%; - top: -28px; - } +/* User.html CSS(Line-left and Line-Right Custom Variants) */ - .weblate-team { - width: 90%; - } +.line-left2 { + display: flex; + font-size: 40px !important; + letter-spacing: -1px; + line-height: 44px; + width: unset !important; + justify-content: space-between; + font-weight: unset !important; + color: #2c3647; } -@media (max-width: 790px) { - .content-p { - width: 100%; - display: unset !important; - text-align: center; - } +.left-line3 { + display: flex; + justify-content: space-between; + border: none; + margin-bottom: 20px; +} - .weblate-team-content { - text-align: center; - } +.line-right2 { + color: #3f85ff; + font-size: 18px; + font-weight: 600; + letter-spacing: 0; + line-height: 23px; + margin-top: 17px; + margin-left: 40px; +} + +.inner-content { + display: flex; +} + +.inner-content-child1 { + width: 64.84%; +} + +.inner-content-child2 { + width: 35.16%; +} + +/* User.html CSS(Custom Styles and Custom Margin and Paddings) */ + +.stylep { + padding-bottom: 0px !important; +} + +.style2 > div { + font-size: 18px !important; + line-height: 30px !important; + color: #2c3548; + padding-top: 15x; + padding-bottom: 20px; +} + +.style4 { + width: 167px !important; +} + +.style3 { + width: unset !important; +} + +.style3 span { + font-weight: bold; +} + +.custom-gradient { + height: 20px; + background: linear-gradient(180deg, #e9eaec -45%, #ffffff 100%); + border: none; } diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 5796938867..a3d536cc41 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4103,70 +4103,467 @@ input.fullwidth { } } -/*Your Weblate Team - About us */ -.content-p { - width: 69%; - display: inline-block; - padding-left: 10px; - text-align: left; +/*Testimonial and Slider CSS*/ + +.testimonial { + width: 365px; + border-radius: 30px; + background-color: #ffffff; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1); + margin-left: 10px; } -.content-p p { - font-weight: bold; - text-transform: uppercase; +.icon-review { + text-align: left; +} +.icon-review img { + margin-left: 50px; +} +.icon-review p { + margin-left: 35px; + margin-top: -25px; + width: 70%; + font-size: 15px; + line-height: 18px; + letter-spacing: 0.5px; + color: #2a3744; } -.weblate-team-content img { - width: 80px; - height: 80px; +.circle-user { + width: 40px; + height: 40px; border-radius: 50%; position: relative; - top: -15px; + left: 32px; + margin-top: 20px; +} +.circle-user img { + margin: 0px; + border-radius: 50%; +} + +.icon-user { + display: flex; + text-align: left; + padding-bottom: 25px; +} +.content-user { + margin-top: 20px; + margin-left: 45px; +} +.content-user a { + color: #1fa385; + line-height: 23px; + text-decoration: underline; +} +.content-logo { + margin: 0px !important; +} + +.slider-slide { + display: -webkit-flex; + display: flex; + -webkit-align-items: center; + align-items: center; + -webkit-justify-content: center; + justify-content: center; +} + +.simple-slider { + height: 400px; +} + +.simple-slider .slider-btn.slider-btn-prev { + left: 11px !important; + background-position: left !important; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1) !important; + background: white !important; + border-radius: 50% !important; + width: 50px !important; + height: 50px !important; +} + +.simple-slider .slider-btn.slider-btn-next { + right: 4px !important; + background-position: right !important; + border-radius: 50% !important; + width: 50px !important; + height: 50px !important; + background: white !important; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1) !important; +} + +.simple-slider .slider-btn.slider-btn-next img { + padding: 18px; + margin: 0px; +} + +.simple-slider .slider-btn.slider-btn-prev img { + padding: 18px; + margin: 0px; +} + +/* Services CSS */ + +/* Services CSS (Button Sizes) */ + +.med { + min-width: 140px !important; + min-height: 50px !important; +} + +.med1 { + min-width: 120px !important; + min-height: 50px !important; +} + +.med2 { + display: none; +} + +.med3 { + min-width: 100px !important; + min-height: 50px !important; +} +.med4 { + min-width: 150px !important; + min-height: 50px !important; +} + +.med5 { + min-width: 170px !important; + min-height: 50px !important; +} + +/* Services CSS (More Weblate Grid) */ + +.inner-grid { + display: grid; + grid-template-columns: auto auto auto; + grid-column-gap: 0px; + grid-row-gap: 25px; } -.weblate-team-content { - display: table-cell; - padding-bottom: 90px; +.grid-item2 p { + color: #2e344b; + font-size: 18px; + font-weight: 600; + letter-spacing: 0; + line-height: 30px; +} + +.grid-item2 t { + color: #2e354a; + font-size: 16px; + letter-spacing: 0; + line-height: 10px; +} + +.grid-item1 { + padding-top: 5px; +} + +.grid-item2 { + padding-left: 15px; +} + +.grid-item3 { + padding-top: 5px; +} + +/* Services CSS (Inputs and placeholders) */ + +input[type="email"] { + height: 50px; + width: 70%; + border-radius: 5px 5px 0 0; + background-color: #e9eaec; + border-bottom: 2px solid #c4c6cb; + border-top: none; + border-right: none; + border-left: none; + padding: 13px 5px; +} + +::placeholder { + color: #bfc3c7; + font-size: 18px; + letter-spacing: 0; + line-height: 23px; + padding-left: 10px; +} + +input.fullwidth { + box-sizing: border-box; + height: 50px; + width: 100%; + border: 2px solid #bfc3c7; + border-radius: 5px; +} + +/* Services CSS (Users section) */ + +.user-slot { + height: 60px; + width: 330px; + border: 1px solid #00d2e6; + border-radius: 30px; + margin-bottom: 10px; + opacity: 0.8; + position: relative; +} + +.user-slot-content p { + color: #1fa385; + font-size: 14px; + letter-spacing: 0.86px; + line-height: 0px !important; + padding-bottom: 3px; +} + +.user-slot-content t { + color: #2a3744; + font-size: 17px; + letter-spacing: 0; + line-height: 0px !important; +} + +.user-img { + position: relative; + top: -14px; + left: 288px; +} + +.user-slot-content { + position: relative; + top: 19px; + left: 30px; +} + +/* Services CSS (Payments Section) */ + +.payment-listing { + border-bottom: 1px solid #e9eaec; +} + +.payment-listing:last-child { + border-bottom: none; +} + +/* Services CSS (Services) */ + +.service-variant { + display: flex; + justify-content: space-between; + height: 120px; + align-items: center; +} +.service-variant p { + color: #2b3646; + font-size: 40px; + letter-spacing: -1px; + line-height: 44px; + padding-left: 40px; + padding-top: 10px; +} + +.service-time { + display: grid; + text-align: center; padding-top: 20px; + padding-right: 40px; + color: #bfc3c7; + font-size: 17px; } -.weblate-team { - display: table; - width: 82%; +/* Services CSS (Custom paddings, styles and margins) */ + +.bdr-btm { + border-bottom: none !important; +} + +.style { + padding-top: 0px !important; + padding-bottom: 0px !important; +} + +.pt-pb { + padding-top: 0px !important; + padding-bottom: 0px !important; +} + +.pt-1 { + padding-top: 22px !important; +} + +.style6 > div { + font-size: 18px !important; + line-height: 30px !important; + color: #2c3548; + padding-top: 15x; + padding-bottom: 20px; +} + +.style2 t { + font-size: 16px; + line-height: 30px; + padding-left: 21px; + font-weight: 600; + letter-spacing: 0; +} + +.pl-1 { + font-size: 16px; + padding-left: 20px; +} + +/* Services CSS (Days check color) */ + +.grey { + color: #bfc3c7 !important; + font-size: 16px; +} + +.orange { + color: #f6664c !important; + font-size: 16px; +} + +/* For change in font size of payments */ +.payment-font-size { + font-size: 16px !important; +} + +.payment-font-size a { + padding-left: 40px; + text-decoration: none !important; +} + +.payment-font-size a img { + position: relative; + top: 1px; + padding-left: 25px; +} + +/* User.html CSS */ + +/* User.html CSS(Service Title) */ + +.updated-service-title span { + color: #00a481; + font-size: 16px; + margin-left: 40.5px; +} + +.updated-service-title span a { + color: #00a481; + font-size: 16px; + letter-spacing: 0; + line-height: 20px; +} + +.updated-service-title span img { + height: 15px; + width: 10px; + position: relative; + top: 3px; + margin-left: 5px; +} + +/* User.html CSS(Donation Box) */ + +.payment-form-donationbox { + height: 100px; + width: 100%; + max-width: 530px; + border-radius: 20px; + background-color: #ffffff; + box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1); margin: 0 auto; + display: flex; + align-items: center; + justify-content: center; } -@media (max-width: 1250px) { - .content-p { - width: 58%; - } +.payment-form-donationbox a { + min-width: 0px; } -@media (max-width: 889px) { - .content-p { - width: 65%; - } +.line-right-donationbox { + font-size: 18px; + padding-right: 30px; +} - .weblate-team-content img { - width: 65px; - height: 65px; - border-radius: 50%; - top: -28px; - } +/* User.html CSS(Line-left and Line-Right Custom Variants) */ - .weblate-team { - width: 90%; - } +.line-left2 { + display: flex; + font-size: 40px !important; + letter-spacing: -1px; + line-height: 44px; + width: unset !important; + justify-content: space-between; + font-weight: unset !important; + color: #2c3647; } -@media (max-width: 790px) { - .content-p { - width: 100%; - display: unset !important; - text-align: center; - } +.left-line3 { + display: flex; + justify-content: space-between; + border: none; + margin-bottom: 20px; +} - .weblate-team-content { - text-align: center; - } +.line-right2 { + color: #3f85ff; + font-size: 18px; + font-weight: 600; + letter-spacing: 0; + line-height: 23px; + margin-top: 17px; + margin-right: 40px; +} + +.inner-content { + display: flex; +} + +.inner-content-child1 { + width: 64.84%; +} + +.inner-content-child2 { + width: 35.16%; +} + +/* User.html CSS(Custom Styles and Custom Margin and Paddings) */ + +.stylep { + padding-bottom: 0px !important; +} + +.style2 > div { + font-size: 18px !important; + line-height: 30px !important; + color: #2c3548; + padding-top: 15x; + padding-bottom: 20px; +} + +.style4 { + width: 167px !important; +} + +.style3 { + width: unset !important; +} + +.style3 span { + font-weight: bold; +} + +.custom-gradient { + height: 20px; + background: linear-gradient(180deg, #e9eaec -45%, #ffffff 100%); + border: none; } diff --git a/weblate_web/templates/snippets/payment.html b/weblate_web/templates/snippets/payment.html index 5d5a301c36..811b88effa 100644 --- a/weblate_web/templates/snippets/payment.html +++ b/weblate_web/templates/snippets/payment.html @@ -1,33 +1,36 @@ {% load i18n %} {% load humanize %} +{% load date_diff %} +{% load static %} + + diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index 1ca44320ae..551758a0d2 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -1,72 +1,138 @@ {% load i18n %} +{% load static %} +{% load date_diff %} -
-
-
{% trans "Service" %}
+
+
+
+

{{ service.get_status_display }}

+
+ {% with subscriptions=service.subscription_set.all %} + {% for subscription in subscriptions %} + {% if subscription.expires|days_diff_from_today < 30 %} + {% if subscription.expires|days_diff_from_today < 2 and subscription.expires|days_diff_from_today >= 0 %} + {{ subscription.expires|days_diff_from_today}} day remaining + {% elif subscription.expires|days_diff_from_today < 0 %} + Expired + {% else %} + {{ subscription.expires|days_diff_from_today}} days remaining + {% endif %} + {% else %} + {{ subscription.expires|days_diff_from_today}} days remaining + {% endif %} + {% endfor %} + {% endwith %} +
+
+
+
+ +
+
{% trans "Users" %}
- {{ service.get_status_display }} - {% if not service.check_in_limits %} -
- {% trans "Exceeds selected service offering." %} -
- {% endif %} + {% for owner in service.users.all %} +
+
+
+

{{ owner.last_name }}

+ {{ owner.email }}
+ {% if owner == user %} +
+ {% else %} + {% csrf_token %} + + {% endif %} +
+ {% csrf_token %} + {% if owner != user %} + + + {% endif %} +
+ {% endfor %} +
+ {% csrf_token %} + + +
+ {% if service.needs_token %} -
-
{% trans "Activation token" %}
+
+
{% trans "Activation token" %}

- {% trans "Copy" %} + {% trans "Copy" %}
{% csrf_token %} - +
{% endif %} {% if service.backup_repository %} -
-
{% trans "Backup repository" %}
+ {% endif %} -
+
{% trans "Server URL" %}
{% if service.last_report %} {{ service.last_report.site_title|default:"Weblate" }} {% else %}

- {% trans "Use an activation token to connect your Weblate installation to the support portal. This step is optional, you can use support services without it as well." %} - {% trans "See documentation on subscription management." %} + {% trans "You can use use support services on our webite. Or, for more comfort, use an activation token to connect your Weblate installation to the support portal. More in " %} + {% trans "Documentation." %}

{% endif %}
- {% if service.note %} -
-
{% trans "Note" %}
-
-

{{ service.note }}

-
-
-
- {% endif %} {% with subscriptions=service.subscription_set.all %} {% for subscription in subscriptions %} -
+
{% trans "Subscription" %}
- {{ subscription.get_package_display }} +

{{ subscription.get_package_display }} {% if subscription.expires|days_diff_from_today < 365 %} + monthly + {% else %} + yearly + {% endif %}

+ {{ subscription.created|date:"d M Y" }}{{ subscription.expires|date:"d M Y" }} + + {% if subscription.expires|days_diff_from_today < 30 %} + {% if subscription.expires|days_diff_from_today < 2 and subscription.expires|days_diff_from_today >= 0 %} + {{ subscription.expires|days_diff_from_today}} day remaining + {% elif subscription.expires|days_diff_from_today < 0 %} + Expired + {% else %} + {{ subscription.expires|days_diff_from_today}} days remaining + {% endif %} + {% else %} + {{ subscription.expires|days_diff_from_today}} days remaining + {% endif %} + + +
+ Note: + + {% if service.note %} + {{ service.note }} + {% endif %} + + + + {% if service.status == "shared" %} {% trans "Change plan" %} {% endif %} @@ -74,26 +140,20 @@
{% if subscription.get_repeat %} -
+
{% trans "Validity" %}
-
{% blocktrans with created=subscription.created|date:"SHORT_DATE_FORMAT" expires=subscription.expires|date:"SHORT_DATE_FORMAT" context "Date range" %}{{ created }}–{{ expires }}{% endblocktrans %}
-
-
- {% else %} -
-
{% trans "Creation date" %}
-
{{ subscription.created|date:"SHORT_DATE_FORMAT" }}
+
{% blocktrans with created=subscription.created|date:"d M Y" expires=subscription.expires|date:"d M Y" context "Date range" %}{{ created }}–{{ expires }}{% endblocktrans %}
{% endif %} {% if subscription.get_repeat %} -
-
{% trans "State" %}
+
+
{% trans "Billing" %}
{% if not subscription.active %} {% trans "Expired" %} {% elif subscription.payment_obj.recurring %} - {% trans "Automatic renewal" %}
+ {% trans "Automatic monthly renewal" %}
{% else %} {% trans "No renewal" %} {% endif %} @@ -101,7 +161,7 @@ {% csrf_token %} {% if subscription.yearly_package %} - + and save 20% {% endif %} {% if subscription.payment_obj.recurring %} @@ -115,7 +175,7 @@
{% endif %} {% endfor %} -
+
{% trans "Payments" %}
{% for subscription in subscriptions %} @@ -127,36 +187,27 @@
{% endwith %} -
-
{% trans "Users" %}
-
- {% for owner in service.users.all %} -
- {{ owner.last_name }} <{{ owner.email }}> - {% csrf_token %} - {% if owner != user %} - - - {% endif %} -
- {% endfor %} -
- {% csrf_token %} - - -
-
-
-
-
-
{% trans "Get more services" %}
+ +
+
{% trans "More Weblate" %}
- {% for package, name in service.get_suggestions %} - {{ name }} +
+ {% for package, name, desc, image, text in service.get_suggestions %} +
+ +
+
+

{{ name }}

+ {{ desc }} +
+ {% empty %} - {% trans "Congratulations, your Weblate instance is fully covered." %} + {% trans "Congratulations, You are fully covered." %} {% endfor %}
-
+
+
diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index 97646160bb..853bd497fe 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -1,9 +1,12 @@ {% extends "base.html" %} {% load i18n %} - +{% load static %} +{% load date_diff %} {% block title %}{% trans "User profile at Weblate" %}{% endblock %} {% block content %} + +
@@ -14,47 +17,55 @@

{% trans "User profile" %}

{% with services=user.service_set.all %} {% if services %} -

{% trans "Your services" %}

- {% for service in services %} +
+

{% trans "My services" %}{% trans "See user profile " %}>

+
+ {% for service in services %} {% include "snippets/service.html" %} {% endfor %} {% endif %} {% endwith %} -

{% trans "Your donations" %}

+

{% trans "My donations" %}

{% for donation in user.donation_set.all %} -
-
-
{% trans "Creation date" %}
-
{{ donation.created|date:"SHORT_DATE_FORMAT" }}
-
-
-
-
{% trans "Reward" %}
-
- {{ donation.get_reward_display }} - {% if donation.reward %} - {% trans "Edit reward" %} - {% endif %} -
-
+
+
+
{{ donation.get_reward_display }}
+
{% trans "Your reward" %}
+
+
+
{% if donation.link_url %} -
-
{% trans "Link URL" %}
-
{{ donation.link_url }}
+
+
{% trans "Link" %}
+
{{ donation.link_url }}
{% endif %} -
-
{% trans "Expiry date" %}
-
{{ donation.expires|date:"SHORT_DATE_FORMAT" }}
+
+
{% trans "Active" %}
+
{{ donation.expires|date:"d M Y" }}{{ donation.created|date:"d M Y" }} + {% if donation.expires|days_diff_from_today < 30 %} + {% if donation.expires|days_diff_from_today < 2 and donation.expires|days_diff_from_today >= 0 %} + {{ donation.expires|days_diff_from_today}} day remaining + {% elif donation.expires|days_diff_from_today < 0 %} + Expired + {% else %} + {{ donation.expires|days_diff_from_today}} days remaining + {% endif %} + {% else %} + {{ donation.expires|days_diff_from_today}} days remaining + {% endif %} + +
-
-
{% trans "State" %}
-
+
+
+ +
{% if not donation.active %} {% trans "Expired" %} {% elif donation.payment_obj.recurring %} @@ -64,38 +75,41 @@

{% trans "Your donations" %}

{% endif %}
{% csrf_token %} - +
{% if donation.active and donation.payment_obj.recurring %}
{% csrf_token %} - +
{% endif %}
-
-
{% trans "Payments" %}
-
+
+
{% trans "Payments" %}
+
{% for payment in donation.list_payments %} {% include "snippets/payment.html" %} {% endfor %}
-
-
+
+
+
+
+ +
+
{% empty %} -
-
-
{% trans "Donate to see a nice message here." %}
-
-
-
-
- {% trans "Donate" %} + +
+ +
{% trans "Wanna see a nice message here?" %}
+ + {% trans "Donate now" %}
{% endfor %}
diff --git a/weblate_web/templatetags/date_diff.py b/weblate_web/templatetags/date_diff.py new file mode 100644 index 0000000000..58884d2a86 --- /dev/null +++ b/weblate_web/templatetags/date_diff.py @@ -0,0 +1,9 @@ +from django.template import Library +from django.utils import timezone + +register = Library() + + +@register.filter +def days_diff_from_today(end): + return (end - timezone.now()).days + 1 From a93891b0f70b42ced745a3f5c8ef51ec469b3461 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Tue, 2 Feb 2021 16:08:42 +0500 Subject: [PATCH 05/19] User page - service section design changes-update --- weblate_web/static/custom.js | 4 ++ weblate_web/static/style-rtl.css | 77 +++------------------ weblate_web/static/style.css | 73 ++----------------- weblate_web/templates/snippets/payment.html | 4 +- weblate_web/templates/snippets/service.html | 55 ++++++++------- weblate_web/templates/user.html | 29 ++++---- 6 files changed, 66 insertions(+), 176 deletions(-) diff --git a/weblate_web/static/custom.js b/weblate_web/static/custom.js index 0300124208..5f0426352b 100644 --- a/weblate_web/static/custom.js +++ b/weblate_web/static/custom.js @@ -207,3 +207,7 @@ ready(() => { new ClipboardJS("[data-clipboard-text]"); }); + +function removeUser(userId) { + document.getElementById(`server_user_${userId}_form`).submit(); +} \ No newline at end of file diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index d983c674ef..d2a4222d91 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4499,72 +4499,11 @@ input.fullwidth { border: none; } - -/* Your Weblate Team - About Us */ - -.content-p { - width: 69%; - display: inline-block; - padding-right: 10px; - text-align: right; -} - -.content-p p { - font-weight: bold; - text-transform: uppercase; -} - -.weblate-team-content img { - width: 80px; - height: 80px; - border-radius: 50%; - position: relative; - top: -15px; -} - -.weblate-team-content { - display: table-cell; - padding-bottom: 90px; - padding-top: 20px; -} - -.weblate-team { - display: table; - width: 82%; - margin: 0 auto; -} - -@media (max-width: 1250px) { - .content-p { - width: 58%; - } -} - -@media (max-width: 889px) { - .content-p { - width: 65%; - } - - .weblate-team-content img { - width: 65px; - height: 65px; - border-radius: 50%; - top: -28px; - } - - .weblate-team { - width: 90%; - } -} - -@media (max-width: 790px) { - .content-p { - width: 100%; - display: unset !important; - text-align: center; - } - - .weblate-team-content { - text-align: center; - } -} +.subscription-note{ + font-size: 16px; + color: #BFC3C7; + } + + .subscription-note span{ + color:#2C3548 !important; + } diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index ddd25bb464..ab27e6d1b9 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4489,72 +4489,11 @@ input.fullwidth { border: none; } - -/*Your Weblate Team - About us */ - -.content-p { - width: 69%; - display: inline-block; - padding-left: 10px; - text-align: left; +.subscription-note{ + font-size: 16px; + color: #BFC3C7; } -.content-p p { - font-weight: bold; - text-transform: uppercase; -} - -.weblate-team-content img { - width: 80px; - height: 80px; - border-radius: 50%; - position: relative; - top: -15px; -} - -.weblate-team-content { - display: table-cell; - padding-bottom: 90px; - padding-top: 20px; -} - -.weblate-team { - display: table; - width: 82%; - margin: 0 auto; -} - -@media (max-width: 1250px) { - .content-p { - width: 58%; - } -} - -@media (max-width: 889px) { - .content-p { - width: 65%; - } - - .weblate-team-content img { - width: 65px; - height: 65px; - border-radius: 50%; - top: -28px; - } - - .weblate-team { - width: 90%; - } -} - -@media (max-width: 790px) { - .content-p { - width: 100%; - display: unset !important; - text-align: center; - } - - .weblate-team-content { - text-align: center; - } -} +.subscription-note span{ + color:#2C3548 !important; +} \ No newline at end of file diff --git a/weblate_web/templates/snippets/payment.html b/weblate_web/templates/snippets/payment.html index 811b88effa..3708bb0989 100644 --- a/weblate_web/templates/snippets/payment.html +++ b/weblate_web/templates/snippets/payment.html @@ -25,9 +25,9 @@ {% endif %}
{{ payment.description }} {% if payment.end|days_diff_from_today < 365 %} - monthly + {% trans "monthly" %} {% else %} - yearly + {% trans "yearly" %} {% endif %}
{% if payment.start %}
{% blocktrans with created=payment.start|date:"d M Y" expires=payment.end|date:"d M Y" context "Date range" %}{{ created }}{{ expires }}{% endblocktrans %}
diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index 551758a0d2..fbfa88d260 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -9,23 +9,25 @@
{% with subscriptions=service.subscription_set.all %} {% for subscription in subscriptions %} - {% if subscription.expires|days_diff_from_today < 30 %} - {% if subscription.expires|days_diff_from_today < 2 and subscription.expires|days_diff_from_today >= 0 %} - {{ subscription.expires|days_diff_from_today}} day remaining - {% elif subscription.expires|days_diff_from_today < 0 %} - Expired + {% with days_from_today=subscription.expires|days_diff_from_today %} + {% if days_from_today < 30 %} + {% if days_from_today < 2 and days_from_today >= 0 %} + {{ days_from_today}} {% trans "day remaining" %} + {% elif days_from_today < 0 %} + {% trans "Expired" %} {% else %} - {{ subscription.expires|days_diff_from_today}} days remaining + {{ days_from_today}} {% trans "days remaining" %} {% endif %} {% else %} - {{ subscription.expires|days_diff_from_today}} days remaining + {{ days_from_today}} {% trans "days remaining" %} {% endif %} + {% endwith %} {% endfor %} {% endwith %}
-
+
{% trans "Users" %}
@@ -37,10 +39,10 @@

{{ owner.last_name }}

{{ owner.email }}
{% if owner == user %} -
+
Shield
{% else %} {% csrf_token %} - + {% endif %}
{% csrf_token %} @@ -103,29 +105,34 @@
{% trans "Subscription" %}
-

{{ subscription.get_package_display }} {% if subscription.expires|days_diff_from_today < 365 %} - monthly +

{{ subscription.get_package_display }} + {% with days_from_today=subscription.expires|days_diff_from_today %} + {% if days_from_today < 365 %} + {% trans "monthly" %} {% else %} - yearly + {% trans "yearly" %} {% endif %}

+ {% endwith %} {{ subscription.created|date:"d M Y" }}{{ subscription.expires|date:"d M Y" }} - {% if subscription.expires|days_diff_from_today < 30 %} - {% if subscription.expires|days_diff_from_today < 2 and subscription.expires|days_diff_from_today >= 0 %} - {{ subscription.expires|days_diff_from_today}} day remaining - {% elif subscription.expires|days_diff_from_today < 0 %} + {% with days_from_today=subscription.expires|days_diff_from_today %} + {% if days_from_today < 30 %} + {% if days_from_today < 2 and days_from_today >= 0 %} + {{ days_from_today}} {% trans "day remaining" %} + {% elif days_from_today < 0 %} Expired {% else %} - {{ subscription.expires|days_diff_from_today}} days remaining + {{ days_from_today}} {% trans "days remaining" %} {% endif %} {% else %} - {{ subscription.expires|days_diff_from_today}} days remaining + {{ days_from_today}} {% trans "days remaining" %} {% endif %} + {% endwith %}
- Note: - + Note: + {% if service.note %} {{ service.note }} {% endif %} @@ -153,7 +160,7 @@ {% if not subscription.active %} {% trans "Expired" %} {% elif subscription.payment_obj.recurring %} - {% trans "Automatic monthly renewal" %}
+ {% trans "Automatic renewal" %}
{% else %} {% trans "No renewal" %} {% endif %} @@ -161,7 +168,7 @@ {% csrf_token %} {% if subscription.yearly_package %} - and save 20% + {% trans "and" %}{% trans "save 20%" %}/strong> {% endif %} {% if subscription.payment_obj.recurring %} @@ -194,7 +201,7 @@
{% for package, name, desc, image, text in service.get_suggestions %}
- + logo

{{ name }}

diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index 853bd497fe..dc6566bf61 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -18,7 +18,7 @@

{% trans "User profile" %}

{% with services=user.service_set.all %} {% if services %}
-

{% trans "My services" %}{% trans "See user profile " %}>

+

{% trans "My services" %}{% trans "See user profile " %}>

{% for service in services %} {% include "snippets/service.html" %} @@ -47,18 +47,19 @@

{% trans "My donations" %}

{% trans "Active" %}
{{ donation.expires|date:"d M Y" }}{{ donation.created|date:"d M Y" }} - {% if donation.expires|days_diff_from_today < 30 %} - {% if donation.expires|days_diff_from_today < 2 and donation.expires|days_diff_from_today >= 0 %} - {{ donation.expires|days_diff_from_today}} day remaining - {% elif donation.expires|days_diff_from_today < 0 %} - Expired - {% else %} - {{ donation.expires|days_diff_from_today}} days remaining - {% endif %} - {% else %} - {{ donation.expires|days_diff_from_today}} days remaining - {% endif %} - + {% with days_from_today_donation=donation.expires|days_diff_from_today %} + {% if days_from_today_donation < 30 %} + {% if days_from_today_donation < 2 and days_from_today_donation >= 0 %} + {{ days_from_today_donation}} {% trans "day remaining" %} + {% elif days_from_today_donation < 0 %} + {% trans "Expired" %} + {% else %} + {{ days_from_today_donation}} {% trans "days remaining" %} + {% endif %} + {% else %} + {{ days_from_today_donation}} {% trans "days remaining" %} + {% endif %} + {% endwith %}
@@ -99,7 +100,7 @@

{% trans "My donations" %}

- + Puppy
From 94d3e1261afddb0a8e55325969aea9ccb40b76df Mon Sep 17 00:00:00 2001 From: Creativetech Date: Wed, 3 Feb 2021 15:37:41 +0500 Subject: [PATCH 06/19] User page - service section design changes-update --- weblate_web/static/img/delete.svg | 13 ------ weblate_web/static/style-rtl.css | 47 +++++++++++++++------ weblate_web/static/style.css | 40 +++++++++++++----- weblate_web/templates/snippets/payment.html | 11 +++-- weblate_web/templates/snippets/service.html | 19 +++------ weblate_web/templates/user.html | 29 ++++++------- 6 files changed, 86 insertions(+), 73 deletions(-) delete mode 100644 weblate_web/static/img/delete.svg diff --git a/weblate_web/static/img/delete.svg b/weblate_web/static/img/delete.svg deleted file mode 100644 index 6a7eb85140..0000000000 --- a/weblate_web/static/img/delete.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - 7434ADBA-63E9-4B19-A34C-99D5C7B0B403 - Created with sketchtool. - - - - - - - - \ No newline at end of file diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index d2a4222d91..d8353ea9fc 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -3075,6 +3075,7 @@ input.button.make-payment { .form-line:last-child { border-bottom: none; + border-top: 1px solid #e9eaec; } .form-line > div { @@ -4460,13 +4461,20 @@ input.fullwidth { } .inner-content-child1 { - width: 64.84%; + width: 77.84%; } .inner-content-child2 { - width: 35.16%; + width: auto; } +.inner-content-child2 img{ + max-height: 267px; + max-width: 192px; + float: left; +} + + /* User.html CSS(Custom Styles and Custom Margin and Paddings) */ .stylep { @@ -4481,12 +4489,10 @@ input.fullwidth { padding-bottom: 20px; } -.style4 { - width: 167px !important; -} - .style3 { width: unset !important; + margin-left: 0px !important; + } .style3 span { @@ -4499,11 +4505,24 @@ input.fullwidth { border: none; } -.subscription-note{ - font-size: 16px; - color: #BFC3C7; - } - - .subscription-note span{ - color:#2C3548 !important; - } +.subscription-note { + font-size: 16px; + color: #bfc3c7; +} + +.subscription-note span { + color: #2c3548 !important; +} + +.style7 t{ + font-size: 18px; + line-height: 30px; + padding-left: 55px !important; + padding-right: 0px !important; + font-weight: 400 !important; + letter-spacing: 0; +} + +.style7{ + height: 86px; +} \ No newline at end of file diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index ab27e6d1b9..b30fb537b8 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -3075,6 +3075,8 @@ input.button.make-payment { .form-line:last-child { border-bottom: none; + border-top: 1px solid #e9eaec; + } .form-line > div { @@ -4450,11 +4452,17 @@ input.fullwidth { } .inner-content-child1 { - width: 64.84%; + width: 77.84%; } .inner-content-child2 { - width: 35.16%; + width: auto; +} + +.inner-content-child2 img{ + max-height: 267px; + max-width: 192px; + float: right; } /* User.html CSS(Custom Styles and Custom Margin and Paddings) */ @@ -4471,12 +4479,9 @@ input.fullwidth { padding-bottom: 20px; } -.style4 { - width: 167px !important; -} - .style3 { width: unset !important; + margin-right: 0px !important; } .style3 span { @@ -4489,11 +4494,24 @@ input.fullwidth { border: none; } -.subscription-note{ - font-size: 16px; - color: #BFC3C7; +.subscription-note { + font-size: 16px; + color: #bfc3c7; +} + +.subscription-note span { + color: #2c3548 !important; +} + +.style7 t{ + font-size: 18px; + line-height: 30px; + padding-left: 0px !important; + padding-right: 55px; + font-weight: 400 !important; + letter-spacing: 0; } -.subscription-note span{ - color:#2C3548 !important; +.style7{ + height: 86px; } \ No newline at end of file diff --git a/weblate_web/templates/snippets/payment.html b/weblate_web/templates/snippets/payment.html index 3708bb0989..f3867b90ef 100644 --- a/weblate_web/templates/snippets/payment.html +++ b/weblate_web/templates/snippets/payment.html @@ -6,13 +6,12 @@
- {{ payment.get_amount_display|intcomma }} {{ payment.get_currency_display }}{% if payment.invoice %} + {{ payment.get_amount_display|intcomma }} {{ payment.get_currency_display }} + {% if payment.invoice %} - {% elif payment.state != 5 %} + {% elif payment.state != 5 %}
{% if payment.is_waiting_for_user %} {{ payment.get_state_display }} @@ -22,7 +21,7 @@ {{ payment.get_state_display }} {% endif %}
- {% endif %}
+ {% endif %}
{{ payment.description }} {% if payment.end|days_diff_from_today < 365 %} {% trans "monthly" %} diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index fbfa88d260..0aaca9bea2 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -69,7 +69,7 @@ {% trans "Copy" %}
{% csrf_token %} - +
@@ -105,7 +105,7 @@
{% trans "Subscription" %}
-

{{ subscription.get_package_display }} +

{{ subscription.get_package_display }} {% with days_from_today=subscription.expires|days_diff_from_today %} {% if days_from_today < 365 %} {% trans "monthly" %} @@ -131,14 +131,13 @@
- Note: + {% if service.note %} + {% trans "Note" %}: - {% if service.note %} {{ service.note }} - {% endif %} - + {% endif %} {% if service.status == "shared" %} {% trans "Change plan" %} @@ -146,13 +145,7 @@

- {% if subscription.get_repeat %} -
-
{% trans "Validity" %}
-
{% blocktrans with created=subscription.created|date:"d M Y" expires=subscription.expires|date:"d M Y" context "Date range" %}{{ created }}–{{ expires }}{% endblocktrans %}
-
-
- {% endif %} + {% if subscription.get_repeat %}
{% trans "Billing" %}
diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index dc6566bf61..dde38d4e28 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -20,8 +20,8 @@

{% trans "User profile" %}

{% trans "My services" %}{% trans "See user profile " %}>

- {% for service in services %} - {% include "snippets/service.html" %} + {% for service in services %} + {% include "snippets/service.html" %} {% endfor %} {% endif %} {% endwith %} @@ -39,13 +39,13 @@

{% trans "My donations" %}

{% if donation.link_url %}
-
{% trans "Link" %}
+
{% trans "Link" %}
{{ donation.link_url }}
{% endif %}
-
{% trans "Active" %}
+
{% trans "Active" %}
{{ donation.expires|date:"d M Y" }}{{ donation.created|date:"d M Y" }} {% with days_from_today_donation=donation.expires|days_diff_from_today %} {% if days_from_today_donation < 30 %} @@ -64,7 +64,7 @@

{% trans "My donations" %}

-
+
{% if not donation.active %} @@ -87,22 +87,19 @@

{% trans "My donations" %}

-
-
{% trans "Payments" %}
-
- {% for payment in donation.list_payments %} - {% include "snippets/payment.html" %} - {% endfor %} -
- -
-
-
Puppy
+
+
{% trans "Payments" %}
+
+ {% for payment in donation.list_payments %} + {% include "snippets/payment.html" %} + {% endfor %} +
+
{% empty %} From 558b0f5490f33d7515da47f21650a9aae3a6d736 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Wed, 3 Feb 2021 17:28:47 +0500 Subject: [PATCH 07/19] User page - service section design changes-update --- weblate_web/static/style-rtl.css | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index d8353ea9fc..e9c7b61953 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4468,13 +4468,13 @@ input.fullwidth { width: auto; } -.inner-content-child2 img{ +.inner-content-child2 img { max-height: 267px; max-width: 192px; float: left; + -webkit-transform: scaleX(-1); } - /* User.html CSS(Custom Styles and Custom Margin and Paddings) */ .stylep { @@ -4492,7 +4492,6 @@ input.fullwidth { .style3 { width: unset !important; margin-left: 0px !important; - } .style3 span { @@ -4514,7 +4513,7 @@ input.fullwidth { color: #2c3548 !important; } -.style7 t{ +.style7 t { font-size: 18px; line-height: 30px; padding-left: 55px !important; @@ -4523,6 +4522,6 @@ input.fullwidth { letter-spacing: 0; } -.style7{ +.style7 { height: 86px; -} \ No newline at end of file +} From 9b0b8be64020486df3581aea894d7fe96019f968 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Fri, 5 Feb 2021 15:27:37 +0500 Subject: [PATCH 08/19] User page - service section design changes-update-final fixes --- weblate_web/static/style-rtl.css | 6 ++++++ weblate_web/static/style.css | 21 ++++++++++++++++----- weblate_web/templates/snippets/bottom.html | 2 +- weblate_web/templates/user.html | 2 ++ 4 files changed, 25 insertions(+), 6 deletions(-) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index e9c7b61953..0efd857ef5 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4525,3 +4525,9 @@ input.fullwidth { .style7 { height: 86px; } + +/* User.html CSS(Payments section updated) */ + +.payment-updated { + display: flow-root; +} diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index b30fb537b8..e0e7c2d5fd 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -3076,7 +3076,6 @@ input.button.make-payment { .form-line:last-child { border-bottom: none; border-top: 1px solid #e9eaec; - } .form-line > div { @@ -4459,7 +4458,7 @@ input.fullwidth { width: auto; } -.inner-content-child2 img{ +.inner-content-child2 img { max-height: 267px; max-width: 192px; float: right; @@ -4503,7 +4502,7 @@ input.fullwidth { color: #2c3548 !important; } -.style7 t{ +.style7 t { font-size: 18px; line-height: 30px; padding-left: 0px !important; @@ -4512,6 +4511,18 @@ input.fullwidth { letter-spacing: 0; } -.style7{ +.style7 { height: 86px; -} \ No newline at end of file +} + +/* User.html CSS(Payments section updated) */ + +.payment-updated { + display: flow-root; +} + +/* bottom.html CSS(Donation Box Adjustment) */ + +.donation-box-updated { + display: flex; +} diff --git a/weblate_web/templates/snippets/bottom.html b/weblate_web/templates/snippets/bottom.html index c3dab3a379..26cc8ce169 100644 --- a/weblate_web/templates/snippets/bottom.html +++ b/weblate_web/templates/snippets/bottom.html @@ -1,6 +1,6 @@ {% load i18n %}
-
+
{% include "snippets/box-join.html" %} {% include "snippets/box-donate.html" %}
diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index dde38d4e28..f07dabe103 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -92,6 +92,7 @@

{% trans "My donations" %}

Puppy
+
{% trans "Payments" %}
@@ -101,6 +102,7 @@

{% trans "My donations" %}

+
{% empty %}
From 4d8f21161d4ccd533a48fc05dcaf63062c03abc7 Mon Sep 17 00:00:00 2001 From: Creativetech Date: Tue, 9 Feb 2021 12:03:52 +0500 Subject: [PATCH 09/19] Models.py localization and formatting --- weblate_web/models.py | 95 ++++++++++++++++++++++++++----------------- 1 file changed, 58 insertions(+), 37 deletions(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index bd844cb15c..586991a950 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -507,43 +507,64 @@ def expires(self): def get_suggestions(self): if not self.support_subscriptions.exists(): - yield "basic", _( - "Basic support" - ), "This will give you more"\ - " of this and that. "\ - "You can't resist,"\ - "because it is a huge deal.",\ - "img/Support-Basic.svg", "Get more support" - if ( - not self.hosted_subscriptions.exists() - and not self.shared_subscriptions.exists() - ): - if not self.premium_subscriptions.exists(): - yield "premium", _( - "Premium support" - ), "This will give you more "\ - "of this and that. " \ - "You can't resist,"\ - "because it is a huge deal.", \ - "img/Support-Plus.svg", "Get more support" - if not self.extended_subscriptions.exists(): - yield "extended", _( - "Extended support" - ), "This will give you " \ - "more of this and that. " \ - "You can't resist," \ - "because it is a huge deal.", \ - "img/Support-Premium.svg", \ - "Get more support" - if not self.backup_subscriptions.exists(): - yield "backup", _( - "Backup service" - ), "This will give you " \ - "more of this and that. " \ - "You can't resist," \ - "because it is a huge deal.",\ - "img/Support-Backup.svg", \ - "Get daily backups" + yield ( + "basic", + _("Basic support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Basic.svg", + _( + "Get more support" + ), + ) + + if ( + not self.hosted_subscriptions.exists() + and not self.shared_subscriptions.exists() + ): + if not self.premium_subscriptions.exists(): + yield ( + "premium", + _("Premium support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Plus.svg", + _( + "Get more support" + ), + ) + + if not self.extended_subscriptions.exists(): + yield ( + "extended", + _("Extended support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Premium.svg", + _( + "Get more support" + ), + ) + + if not self.backup_subscriptions.exists(): + yield ( + "backup", + _("Backup service"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Backup.svg", + _( + "Get more support" + ), + ) def update_status(self): status = "community" From 707b5b30d7d98ce70e03c921ec31beda8047b511 Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Tue, 23 Feb 2021 15:29:09 +0500 Subject: [PATCH 10/19] fix indentation issue in models file --- weblate_web/models.py | 107 +++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 59 deletions(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index 586991a950..f71e7c2126 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -1,4 +1,3 @@ -# # Copyright © 2012–2021 Michal Čihař # # This file is part of Weblate @@ -507,64 +506,54 @@ def expires(self): def get_suggestions(self): if not self.support_subscriptions.exists(): - yield ( - "basic", - _("Basic support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Basic.svg", - _( - "Get more support" - ), - ) - - if ( - not self.hosted_subscriptions.exists() - and not self.shared_subscriptions.exists() - ): - if not self.premium_subscriptions.exists(): - yield ( - "premium", - _("Premium support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Plus.svg", - _( - "Get more support" - ), - ) - - if not self.extended_subscriptions.exists(): - yield ( - "extended", - _("Extended support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Premium.svg", - _( - "Get more support" - ), - ) - - if not self.backup_subscriptions.exists(): - yield ( - "backup", - _("Backup service"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Backup.svg", - _( - "Get more support" - ), - ) + yield ( + "basic", + _("Basic support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Basic.svg", + _("Get more support"), + ) + + if ( + not self.hosted_subscriptions.exists() + and not self.shared_subscriptions.exists() + ): + if not self.premium_subscriptions.exists(): + yield ( + "premium", + _("Premium support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Plus.svg", + _("Get more support"), + ) + if not self.extended_subscriptions.exists(): + yield ( + "extended", + _("Extended support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Premium.svg", + _("Get more support"), + ) + if not self.backup_subscriptions.exists(): + yield ( + "backup", + _("Backup service"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Backup.svg", + _("Get more support"), + ) def update_status(self): status = "community" From 8aa34cdd6b286f088cce1bcd2283d5ce31aaaddc Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Wed, 24 Feb 2021 18:47:41 +0500 Subject: [PATCH 11/19] merge with upstream, fix indentation --- weblate_web/models.py | 3 +++ weblate_web/static/style-rtl.css | 10 +++++----- weblate_web/static/style.css | 10 +++++----- weblate_web/templates/snippets/service.html | 10 +++++----- weblate_web/templates/user.html | 4 ++-- 5 files changed, 20 insertions(+), 17 deletions(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index e5aadae23e..8c19f28eea 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -1,3 +1,4 @@ +# # Copyright © 2012–2021 Michal Čihař # # This file is part of Weblate @@ -533,6 +534,7 @@ def get_suggestions(self): "img/Support-Plus.svg", _("Get more support"), ) + if not self.extended_subscriptions.exists(): yield ( "extended", @@ -544,6 +546,7 @@ def get_suggestions(self): "img/Support-Premium.svg", _("Get more support"), ) + if not self.backup_subscriptions.exists(): yield ( "backup", diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index 47ba27e23d..4ac445c1f5 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4299,12 +4299,12 @@ input.fullwidth { /* Services CSS (Button Sizes) */ -.med { +.button-med-140 { min-width: 140px !important; min-height: 50px !important; } -.med1 { +.button-med-120 { min-width: 120px !important; min-height: 50px !important; } @@ -4313,16 +4313,16 @@ input.fullwidth { display: none; } -.med3 { +.button-med-100 { min-width: 100px !important; min-height: 50px !important; } -.med4 { +.button-med-150 { min-width: 150px !important; min-height: 50px !important; } -.med5 { +.button-med-170 { min-width: 170px !important; min-height: 50px !important; } diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 917e195ef7..46e8da0b44 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4294,12 +4294,12 @@ input.fullwidth { /* Services CSS (Button Sizes) */ -.med { +.button-med-140 { min-width: 140px !important; min-height: 50px !important; } -.med1 { +.button-med-120 { min-width: 120px !important; min-height: 50px !important; } @@ -4308,16 +4308,16 @@ input.fullwidth { display: none; } -.med3 { +.button-med-100 { min-width: 100px !important; min-height: 50px !important; } -.med4 { +.button-med-150 { min-width: 150px !important; min-height: 50px !important; } -.med5 { +.button-med-170 { min-width: 170px !important; min-height: 50px !important; } diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index 0aaca9bea2..64961f77a5 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -55,7 +55,7 @@
{% csrf_token %} - +
@@ -66,10 +66,10 @@
{% trans "Activation token" %}

- {% trans "Copy" %} + {% trans "Copy" %}
{% csrf_token %} - +
@@ -80,8 +80,8 @@
{% trans "Backup repository" %}
diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index f07dabe103..b1271d0494 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -76,12 +76,12 @@

{% trans "My donations" %}

{% endif %}
{% csrf_token %} - +
{% if donation.active and donation.payment_obj.recurring %}
{% csrf_token %} - +
{% endif %}
From eae119eef2499f8e8d8eac741837a5edb4dfb749 Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Thu, 25 Feb 2021 16:30:20 +0500 Subject: [PATCH 12/19] merge with upstream, fix indentation and css class name change --- weblate_web/static/style-rtl.css | 30 ++++++++++----------- weblate_web/static/style.css | 30 ++++++++++----------- weblate_web/templates/snippets/service.html | 22 +++++++-------- weblate_web/templates/user.html | 26 +++++++++--------- 4 files changed, 54 insertions(+), 54 deletions(-) diff --git a/weblate_web/static/style-rtl.css b/weblate_web/static/style-rtl.css index 4ac445c1f5..f2c61ce1ce 100644 --- a/weblate_web/static/style-rtl.css +++ b/weblate_web/static/style-rtl.css @@ -4484,11 +4484,11 @@ input.fullwidth { padding-bottom: 0px !important; } -.pt-1 { +.p-top { padding-top: 22px !important; } -.style6 > div { +.service-text-formatting > div { font-size: 18px !important; line-height: 30px !important; color: #2c3548; @@ -4496,7 +4496,7 @@ input.fullwidth { padding-bottom: 20px; } -.style2 t { +.user-text-formatting t { font-size: 16px; line-height: 30px; padding-right: 21px; @@ -4592,7 +4592,7 @@ input.fullwidth { /* User.html CSS(Line-left and Line-Right Custom Variants) */ -.line-left2 { +.get-reward-left-line { display: flex; font-size: 40px !important; letter-spacing: -1px; @@ -4603,14 +4603,14 @@ input.fullwidth { color: #2c3647; } -.left-line3 { +.donation-left-line { display: flex; justify-content: space-between; border: none; margin-bottom: 20px; } -.line-right2 { +.reward-line-right { color: #3f85ff; font-size: 18px; font-weight: 600; @@ -4624,15 +4624,15 @@ input.fullwidth { display: flex; } -.inner-content-child1 { +.inner-content-child-width { width: 77.84%; } -.inner-content-child2 { +.inner-content-child-width-auto { width: auto; } -.inner-content-child2 img { +.inner-content-child-width-auto img { max-height: 267px; max-width: 192px; float: left; @@ -4641,11 +4641,11 @@ input.fullwidth { /* User.html CSS(Custom Styles and Custom Margin and Paddings) */ -.stylep { +.payment-padding { padding-bottom: 0px !important; } -.style2 > div { +.user-text-formatting > div { font-size: 18px !important; line-height: 30px !important; color: #2c3548; @@ -4653,12 +4653,12 @@ input.fullwidth { padding-bottom: 20px; } -.style3 { +.user-text-formatting-donation { width: unset !important; margin-left: 0px !important; } -.style3 span { +.user-text-formatting-donation span { font-weight: bold; } @@ -4677,7 +4677,7 @@ input.fullwidth { color: #2c3548 !important; } -.style7 t { +.user-text-formatting-payment t { font-size: 18px; line-height: 30px; padding-left: 55px !important; @@ -4686,7 +4686,7 @@ input.fullwidth { letter-spacing: 0; } -.style7 { +.user-text-formatting-payment { height: 86px; } diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index 46e8da0b44..a175c6a217 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4479,11 +4479,11 @@ input.fullwidth { padding-bottom: 0px !important; } -.pt-1 { +.p-top { padding-top: 22px !important; } -.style6 > div { +.service-text-formatting > div { font-size: 18px !important; line-height: 30px !important; color: #2c3548; @@ -4491,7 +4491,7 @@ input.fullwidth { padding-bottom: 20px; } -.style2 t { +.user-text-formatting t { font-size: 16px; line-height: 30px; padding-left: 21px; @@ -4583,7 +4583,7 @@ input.fullwidth { /* User.html CSS(Line-left and Line-Right Custom Variants) */ -.line-left2 { +.get-reward-left-line { display: flex; font-size: 40px !important; letter-spacing: -1px; @@ -4594,14 +4594,14 @@ input.fullwidth { color: #2c3647; } -.left-line3 { +.donation-left-line { display: flex; justify-content: space-between; border: none; margin-bottom: 20px; } -.line-right2 { +.reward-line-right { color: #3f85ff; font-size: 18px; font-weight: 600; @@ -4615,15 +4615,15 @@ input.fullwidth { display: flex; } -.inner-content-child1 { +.inner-content-child-width { width: 77.84%; } -.inner-content-child2 { +.inner-content-child-width-auto { width: auto; } -.inner-content-child2 img { +.inner-content-child-width-auto img { max-height: 267px; max-width: 192px; float: right; @@ -4631,11 +4631,11 @@ input.fullwidth { /* User.html CSS(Custom Styles and Custom Margin and Paddings) */ -.stylep { +.payment-padding { padding-bottom: 0px !important; } -.style2 > div { +.user-text-formatting > div { font-size: 18px !important; line-height: 30px !important; color: #2c3548; @@ -4643,12 +4643,12 @@ input.fullwidth { padding-bottom: 20px; } -.style3 { +.user-text-formatting-donation { width: unset !important; margin-right: 0px !important; } -.style3 span { +.user-text-formatting-donation span { font-weight: bold; } @@ -4667,7 +4667,7 @@ input.fullwidth { color: #2c3548 !important; } -.style7 t { +.user-text-formatting-payment t { font-size: 18px; line-height: 30px; padding-left: 0px !important; @@ -4676,7 +4676,7 @@ input.fullwidth { letter-spacing: 0; } -.style7 { +.user-text-formatting-payment { height: 86px; } diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index 64961f77a5..695fd9f4a4 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -3,7 +3,7 @@ {% load date_diff %}
-
+

{{ service.get_status_display }}

@@ -29,7 +29,7 @@
-
+
{% trans "Users" %}
{% for owner in service.users.all %} @@ -62,8 +62,8 @@
{% if service.needs_token %} -
-
{% trans "Activation token" %}
+
+
{% trans "Activation token" %}

{% trans "Copy" %} @@ -76,8 +76,8 @@
{% endif %} {% if service.backup_repository %} -
-
{% trans "Backup repository" %}
+
+
{% trans "Backup repository" %}

{% trans "Copy" %} @@ -86,7 +86,7 @@
{% endif %} -
+
{% trans "Server URL" %}
{% if service.last_report %} @@ -102,7 +102,7 @@
{% with subscriptions=service.subscription_set.all %} {% for subscription in subscriptions %} -
+
{% trans "Subscription" %}

{{ subscription.get_package_display }} @@ -147,7 +147,7 @@

{% if subscription.get_repeat %} -
+
{% trans "Billing" %}
{% if not subscription.active %} @@ -175,7 +175,7 @@
{% endif %} {% endfor %} -
+
{% trans "Payments" %}
{% for subscription in subscriptions %} @@ -188,7 +188,7 @@
{% endwith %} -
+
{% trans "More Weblate" %}
diff --git a/weblate_web/templates/user.html b/weblate_web/templates/user.html index b1271d0494..01c3d3d3f7 100644 --- a/weblate_web/templates/user.html +++ b/weblate_web/templates/user.html @@ -29,24 +29,24 @@

{% trans "My services" %} {% for donation in user.donation_set.all %} -
-
-
{{ donation.get_reward_display }}
-
{% trans "Your reward" %}
+
+
+
{{ donation.get_reward_display }}
+
{% trans "Your reward" %}
-
+
{% if donation.link_url %} -
+
{% trans "Link" %}
-
{{ donation.link_url }}
+
{{ donation.link_url }}
{% endif %} -
+
{% trans "Active" %}
-
{{ donation.expires|date:"d M Y" }}{{ donation.created|date:"d M Y" }} +
{{ donation.expires|date:"d M Y" }}{{ donation.created|date:"d M Y" }} {% with days_from_today_donation=donation.expires|days_diff_from_today %} {% if days_from_today_donation < 30 %} {% if days_from_today_donation < 2 and days_from_today_donation >= 0 %} @@ -63,10 +63,10 @@

{% trans "My donations" %}

-
+
-
+
{% if not donation.active %} {% trans "Expired" %} {% elif donation.payment_obj.recurring %} @@ -88,12 +88,12 @@

{% trans "My donations" %}

-
+
Puppy
-
+
{% trans "Payments" %}
{% for payment in donation.list_payments %} From 5fe7e4e212583f12931627e300f28988cb64b23c Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Thu, 25 Feb 2021 16:44:34 +0500 Subject: [PATCH 13/19] merge with upstream, fix indentation and css class name change --- weblate_web/static/style.css | 1 - 1 file changed, 1 deletion(-) diff --git a/weblate_web/static/style.css b/weblate_web/static/style.css index a175c6a217..6c933ce14b 100644 --- a/weblate_web/static/style.css +++ b/weblate_web/static/style.css @@ -4189,7 +4189,6 @@ input.fullwidth { } } - /*Testimonial and Slider CSS*/ .testimonial { From 9f5d0ad35b2eb8b41d34fcaa0a0b3d4c8eaa9435 Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Fri, 26 Feb 2021 15:47:47 +0500 Subject: [PATCH 14/19] extra lines remove --- weblate_web/templates/service.html | 4 +--- weblate_web/templates/snippets/service.html | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/weblate_web/templates/service.html b/weblate_web/templates/service.html index 4e8c9b88fd..a77f24933f 100644 --- a/weblate_web/templates/service.html +++ b/weblate_web/templates/service.html @@ -1,8 +1,6 @@ {% extends "base.html" %} {% load i18n %} - {% block title %}{% trans "Service" %}{% endblock %} - {% block content %}
@@ -12,4 +10,4 @@

{% trans "Service" %}

-{% endblock %} +{% endblock %} \ No newline at end of file diff --git a/weblate_web/templates/snippets/service.html b/weblate_web/templates/snippets/service.html index 695fd9f4a4..d54f2f43bc 100644 --- a/weblate_web/templates/snippets/service.html +++ b/weblate_web/templates/snippets/service.html @@ -145,7 +145,7 @@
- + {% if subscription.get_repeat %}
{% trans "Billing" %}
From 10b48e9226fbafc095c69764fa65f6e02beb6ce0 Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Fri, 26 Feb 2021 16:55:54 +0500 Subject: [PATCH 15/19] eslint failed --- weblate_web/static/custom.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/weblate_web/static/custom.js b/weblate_web/static/custom.js index 5f0426352b..dacf4b1354 100644 --- a/weblate_web/static/custom.js +++ b/weblate_web/static/custom.js @@ -210,4 +210,4 @@ ready(() => { function removeUser(userId) { document.getElementById(`server_user_${userId}_form`).submit(); -} \ No newline at end of file +} From e6fbb4435468b04d1871367baa2f6cf74b431a9a Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Fri, 26 Feb 2021 17:34:42 +0500 Subject: [PATCH 16/19] end-of-file-fixer --- weblate_web/templates/service.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/weblate_web/templates/service.html b/weblate_web/templates/service.html index a77f24933f..88ac7d6bc1 100644 --- a/weblate_web/templates/service.html +++ b/weblate_web/templates/service.html @@ -1,6 +1,8 @@ {% extends "base.html" %} {% load i18n %} -{% block title %}{% trans "Service" %}{% endblock %} +{% block title %} +{% trans "Service" %} +{% endblock %} {% block content %}
@@ -10,4 +12,4 @@

{% trans "Service" %}

-{% endblock %} \ No newline at end of file +{% endblock %} From 5102608928efeaaf52f18b2afc39bd198819a13d Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Mon, 1 Mar 2021 15:50:43 +0500 Subject: [PATCH 17/19] end-of-file-fixer --- weblate_web/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index 8c19f28eea..8883a2b2fd 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -552,7 +552,7 @@ def get_suggestions(self): "backup", _("Backup service"), _( - "This will give you more of this and that. " + "This will give you more of this and that." "You can't resist, because it is a huge deal." ), "img/Support-Backup.svg", From 909abd512ec962523cf2b4fea0020d9e28a39be5 Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Mon, 1 Mar 2021 16:24:53 +0500 Subject: [PATCH 18/19] end-of-file-fixer --- weblate_web/models.py | 47 ++++--------------------------------------- 1 file changed, 4 insertions(+), 43 deletions(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index 8883a2b2fd..d681a78aac 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -508,56 +508,17 @@ def expires(self): def get_suggestions(self): if not self.support_subscriptions.exists(): - yield ( - "basic", - _("Basic support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Basic.svg", - _("Get more support"), - ) - + yield "basic", _("Basic support") if ( not self.hosted_subscriptions.exists() and not self.shared_subscriptions.exists() ): if not self.premium_subscriptions.exists(): - yield ( - "premium", - _("Premium support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Plus.svg", - _("Get more support"), - ) - + yield "premium", _("Extended support") if not self.extended_subscriptions.exists(): - yield ( - "extended", - _("Extended support"), - _( - "This will give you more of this and that. " - "You can't resist, because it is a huge deal." - ), - "img/Support-Premium.svg", - _("Get more support"), - ) - + yield "extended", _("Extended support") if not self.backup_subscriptions.exists(): - yield ( - "backup", - _("Backup service"), - _( - "This will give you more of this and that." - "You can't resist, because it is a huge deal." - ), - "img/Support-Backup.svg", - _("Get more support"), - ) + yield "backup", _("Backup service") def update_status(self): status = "community" From c3623888f7984154392249d7ba199e91d232beeb Mon Sep 17 00:00:00 2001 From: AyazYousafxai Date: Mon, 1 Mar 2021 16:36:22 +0500 Subject: [PATCH 19/19] end-of-file-fixer --- weblate_web/models.py | 47 +++++++++++++++++++++++++++++++++++++++---- weblate_web/tests.py | 2 +- 2 files changed, 44 insertions(+), 5 deletions(-) diff --git a/weblate_web/models.py b/weblate_web/models.py index d681a78aac..8c19f28eea 100644 --- a/weblate_web/models.py +++ b/weblate_web/models.py @@ -508,17 +508,56 @@ def expires(self): def get_suggestions(self): if not self.support_subscriptions.exists(): - yield "basic", _("Basic support") + yield ( + "basic", + _("Basic support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Basic.svg", + _("Get more support"), + ) + if ( not self.hosted_subscriptions.exists() and not self.shared_subscriptions.exists() ): if not self.premium_subscriptions.exists(): - yield "premium", _("Extended support") + yield ( + "premium", + _("Premium support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Plus.svg", + _("Get more support"), + ) + if not self.extended_subscriptions.exists(): - yield "extended", _("Extended support") + yield ( + "extended", + _("Extended support"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Premium.svg", + _("Get more support"), + ) + if not self.backup_subscriptions.exists(): - yield "backup", _("Backup service") + yield ( + "backup", + _("Backup service"), + _( + "This will give you more of this and that. " + "You can't resist, because it is a huge deal." + ), + "img/Support-Backup.svg", + _("Get more support"), + ) def update_status(self): status = "community" diff --git a/weblate_web/tests.py b/weblate_web/tests.py index fa1f800673..7af87bfddc 100644 --- a/weblate_web/tests.py +++ b/weblate_web/tests.py @@ -634,7 +634,7 @@ def test_your_donations(self): expires=timezone.now() + relativedelta(years=1), payment=self.create_payment()[0].pk, ) - self.assertContains(self.client.get(reverse("user")), "Your donations") + self.assertContains(self.client.get(reverse("user")), "My donations") def test_link(self): self.create_donation()
-
- {{ payment.get_amount_display|intcomma }} {{ payment.get_currency_display }} -
- {{ payment.description }}
+
+ {{ payment.get_amount_display|intcomma }} {{ payment.get_currency_display }}{% if payment.invoice %} +
- {% if payment.invoice %} -
- {% if payment.invoice_filename_valid %} - {{ payment.invoice_filename }} - {% else %} - {{ payment.invoice_filename }} - {% endif %} -
- {% elif payment.state != 5 %} -
- {% if payment.is_waiting_for_user %} - {{ payment.get_state_display }} - {% elif payment.details.reject_reason %} - {{ payment.get_state_display }}: {{ payment.details.reject_reason }} - {% else %} - {{ payment.get_state_display }} - {% endif %} -
- {% endif %} + {{ payment.invoice_filename }} > +
+ {% elif payment.state != 5 %} +
+ {% if payment.is_waiting_for_user %} + {{ payment.get_state_display }} + {% elif payment.details.reject_reason %} + {{ payment.get_state_display }}: {{ payment.details.reject_reason }} + {% else %} + {{ payment.get_state_display }} + {% endif %} +
+ {% endif %} +
+ {{ payment.description }} {% if payment.end|days_diff_from_today < 365 %} + monthly + {% else %} + yearly + {% endif %}
{% if payment.start %} - {% blocktrans with created=payment.start|date:"SHORT_DATE_FORMAT" expires=payment.end|date:"SHORT_DATE_FORMAT" context "Date range" %}{{ created }}–{{ expires }}{% endblocktrans %} +
{% blocktrans with created=payment.start|date:"d M Y" expires=payment.end|date:"d M Y" context "Date range" %}{{ created }}{{ expires }}{% endblocktrans %}
{% endif %}