Compare commits
48 Commits
87f67aa24a
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
| f6f4bfa2ab | |||
| f625537b6f | |||
| 794d5e810d | |||
| a5c0985093 | |||
| 70b481480f | |||
| a37e009109 | |||
| 191ceaca36 | |||
| 53ec69d27c | |||
| 26f29e4353 | |||
| e1f239d6ee | |||
| 355abb1add | |||
| a3795dd267 | |||
| 90ffcd090c | |||
| acb52aef73 | |||
| fa04e5275f | |||
| 0288c05e2b | |||
| 9c96d8c253 | |||
| 423394a9d9 | |||
| 3b0e1f6524 | |||
| c57eec05c9 | |||
| 197f910b82 | |||
| a940f2ff0d | |||
| 66a1170221 | |||
| 5f403710d1 | |||
| 529fb3fc5d | |||
| cae627f0b0 | |||
| 5ff75a4a80 | |||
| 80deab3c42 | |||
| 6030998018 | |||
| abaff023cd | |||
| 4dbe424f84 | |||
| 7488a9f8c8 | |||
| b759ce2d5a | |||
| 84c88ba406 | |||
| b2f7612452 | |||
| 09769542f9 | |||
| a90d7c06a9 | |||
| 4ce12a5428 | |||
| 7ba65e73ae | |||
| 4a58a47a8e | |||
| e8506e1b4e | |||
| 61805df66b | |||
| e98d426324 | |||
| 6c062ce3c8 | |||
| 8f47d4fb65 | |||
| 63e507d0ff | |||
| 5a16466766 | |||
| 4b0c923ec0 |
@@ -314,7 +314,11 @@ def send_message_ajax(request):
|
||||
html = render_to_string('mail/m_request_offer.html', Dict, request)
|
||||
from BaseModels.mailSender import admin_send_mail_by_SMTPlib
|
||||
mail_sets = get_mail_send_options()
|
||||
to = [mail_sets['sender_email']]
|
||||
opts = get_options_by_opt_types('support_email', only_vals=True)
|
||||
if opts and 'support_email' in opts:
|
||||
to = [opts['support_email']]
|
||||
else:
|
||||
to = [mail_sets['sender_email']]
|
||||
res = admin_send_mail_by_SMTPlib(
|
||||
mail_sets,
|
||||
subject=subject,
|
||||
|
||||
@@ -145,8 +145,8 @@ def send_mail_by_SMTPlib(sets, subject, from_email, to_init, html_content, smtp_
|
||||
res = None
|
||||
|
||||
if type(to) in (list, tuple):
|
||||
if sets['sender_email'] in to:
|
||||
to.remove(sets['sender_email'])
|
||||
# if sets['sender_email'] in to:
|
||||
# to.remove(sets['sender_email'])
|
||||
|
||||
if len(to) > 1:
|
||||
to_str = u', '.join(to)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import json
|
||||
|
||||
from django.http import HttpResponse, Http404, FileResponse
|
||||
from django.http import HttpResponse, Http404, FileResponse, HttpResponseRedirect
|
||||
from django.template import loader, RequestContext
|
||||
from django.contrib.auth.decorators import login_required
|
||||
|
||||
@@ -15,6 +15,7 @@ from django.views.decorators.csrf import csrf_exempt
|
||||
from webpush import send_user_notification
|
||||
import json
|
||||
from datetime import datetime, timedelta
|
||||
from django.urls import reverse
|
||||
|
||||
def generate_routes(request, routes_count):
|
||||
if (not request.user
|
||||
@@ -73,7 +74,7 @@ def test_code(request):
|
||||
|
||||
from RoutesApp.search_matches import search_matches
|
||||
from RoutesApp.models import Route
|
||||
search_matches(Route.objects.filter(id=16))
|
||||
search_matches(Route.objects.filter(id=17158))
|
||||
|
||||
# from RoutesApp.funcs import get_city_by_type_transport_and_address_point
|
||||
# from RoutesApp.models import Route
|
||||
@@ -248,6 +249,12 @@ def StaticPageView(request, url):
|
||||
'route_form': RouteForm(),
|
||||
'owner_type': 'mover'
|
||||
})
|
||||
elif url in ['landing_customer', 'landing_mover']:
|
||||
raise Http404
|
||||
# return HttpResponseRedirect(reverse('customer_landing_page'))
|
||||
# elif url == 'landing_mover':
|
||||
# return HttpResponseRedirect(reverse('mover_landing_page'))
|
||||
|
||||
# elif url == 'works':
|
||||
# return WorksPage(request)
|
||||
elif url in ['main']:
|
||||
|
||||
@@ -30,6 +30,6 @@ class Admin_Route(Admin_Trans_BaseModel):
|
||||
search_fields = [
|
||||
'owner__first_name', 'owner__last_name', 'from_city__name', 'to_city__name', 'owner__email'
|
||||
]
|
||||
raw_id_fields = ['from_city', 'to_city']
|
||||
raw_id_fields = ['from_city', 'to_city', 'owner']
|
||||
|
||||
admin.site.register(Route,Admin_Route)
|
||||
admin.site.register(Route, Admin_Route)
|
||||
|
||||
@@ -47,7 +47,7 @@ def send_push_message_for_found_matches_routes(route, data_Dict):
|
||||
|
||||
|
||||
|
||||
def send_mail_found_matches_routes(route, data_Dict):
|
||||
def send_mail_found_matches_routes(route, matched_route, data_Dict):
|
||||
print(f'send_mail_found_matches_routes to route id = {route.id}')
|
||||
|
||||
Dict = {
|
||||
@@ -67,7 +67,9 @@ def send_mail_found_matches_routes(route, data_Dict):
|
||||
from_email=mail_sets['sender_email'], to=to,
|
||||
html_content=html
|
||||
)
|
||||
to = ['web@syncsystems.net']
|
||||
|
||||
subject = f'route matches {route.id} <> {matched_route.id} send to {route.owner.email}'
|
||||
to = ['web@syncsystems.net', 'sa@a3-global.com']
|
||||
res = admin_send_mail_by_SMTPlib(
|
||||
mail_sets,
|
||||
subject=subject,
|
||||
@@ -78,6 +80,56 @@ def send_mail_found_matches_routes(route, data_Dict):
|
||||
return res
|
||||
|
||||
|
||||
def user_notify_by_result_search_matches(route_for_send, founded_route, params):
|
||||
log = ''
|
||||
|
||||
data_Dict = None
|
||||
try:
|
||||
data_Dict = get_Dict_for_send_msgs(params, founded_route.owner_type)
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error get_Dict_for_send_msgs = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
|
||||
if data_Dict and check_option_in_cur_user_subscribe(
|
||||
route_for_send.owner, 'push уведомления'
|
||||
):
|
||||
try:
|
||||
msg = send_push_message_for_found_matches_routes(route_for_send, data_Dict)
|
||||
if msg:
|
||||
log += msg
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error send_push_message_for_found_matches_routes = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
|
||||
if data_Dict and check_option_in_cur_user_subscribe(
|
||||
route_for_send.owner,
|
||||
'уведомление на e-mail о появлении перевозчика по заданным критериям'
|
||||
):
|
||||
try:
|
||||
msg = send_mail_found_matches_routes(route_for_send, founded_route, data_Dict)
|
||||
if msg:
|
||||
log += msg
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error send_mail_found_matches_routes = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
|
||||
return log
|
||||
|
||||
|
||||
|
||||
def users_notify_by_result_search_matches(source_route, found_routes, params):
|
||||
log = ''
|
||||
log += user_notify_by_result_search_matches(source_route, found_routes[0], params)
|
||||
|
||||
for route in found_routes:
|
||||
log += user_notify_by_result_search_matches(route, source_route, params)
|
||||
|
||||
return log
|
||||
|
||||
|
||||
def search_matches(for_routes=None):
|
||||
print('search_matches')
|
||||
|
||||
@@ -147,39 +199,9 @@ def search_matches(for_routes=None):
|
||||
|
||||
if found_routes:
|
||||
msg = f'found routes for send messages = {found_routes.count()}'
|
||||
print(msg)
|
||||
|
||||
data_Dict = None
|
||||
try:
|
||||
data_Dict = get_Dict_for_send_msgs(params, found_routes[0].owner_type)
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error get_Dict_for_send_msgs = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
|
||||
if data_Dict and check_option_in_cur_user_subscribe(
|
||||
route.owner, 'push уведомления'
|
||||
):
|
||||
try:
|
||||
msg = send_push_message_for_found_matches_routes(route, data_Dict)
|
||||
if msg:
|
||||
log += msg
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error send_push_message_for_found_matches_routes = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
|
||||
if data_Dict and check_option_in_cur_user_subscribe(
|
||||
route.owner,
|
||||
'уведомление на e-mail о появлении перевозчика по заданным критериям'
|
||||
):
|
||||
try:
|
||||
msg = send_mail_found_matches_routes(route, data_Dict)
|
||||
if msg:
|
||||
log += msg
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error send_mail_found_matches_routes = {str(e)}'
|
||||
print(msg)
|
||||
log += msg
|
||||
log += users_notify_by_result_search_matches(route, found_routes, params)
|
||||
|
||||
except Exception as e:
|
||||
msg = f'<br>\n! search_matches Error = {str(e)}'
|
||||
|
||||
14
SubscribesApp/migrations/0008_merge_20250217_1748.py
Normal file
@@ -0,0 +1,14 @@
|
||||
# Generated by Django 4.2.2 on 2025-02-17 17:48
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('SubscribesApp', '0004_alter_subscribe_bg_color_alter_subscribe_text_color'),
|
||||
('SubscribesApp', '0007_subscribeoption_route_highlight_hours'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
]
|
||||
@@ -1 +1 @@
|
||||
.chatterbox{margin-bottom:160px}@media (min-width: 1720px){.chatterbox{margin-bottom:180px}}@media (max-width: 1304.98px){.chatterbox{margin-bottom:142px}}@media (max-width: 991.98px){.chatterbox{margin-left:-50vw;margin-right:-50vw;margin-bottom:122px}}@media (max-width: 767.98px){.chatterbox{max-width:100vw;margin:0 auto 121px;position:relative}}.chatterbox__slider{max-width:1200px;margin:0 auto}@media (min-width: 1720px){.chatterbox__slider{max-width:1640px}}@media (max-width: 1304.98px){.chatterbox__slider{max-width:1100px}}@media (max-width: 991.98px){.chatterbox__slider{max-width:720px}}@media (max-width: 767.98px){.chatterbox__slider{max-width:830px;width:830px;left:50%;transform:translateX(-50%)}}@media (max-width: 479.98px){.chatterbox__slider{max-width:initial}}.chatterbox__slide{width:335px;height:615px;background:url("/static/img/webp/phone-border.webp") center no-repeat;transition:scale 0.2s ease-in-out;margin:auto;position:relative}@media (min-width: 1720px){.chatterbox__slide{width:456px;height:836px;background-size:456px 836px}}@media (max-width: 1304.98px){.chatterbox__slide{width:308px;height:565px;background-size:308px 565px}}@media (max-width: 991.98px){.chatterbox__slide{width:206px;height:377px;background-size:206px 377px}}@media (max-width: 767.98px){.chatterbox__slide{width:234px;height:429px;background-size:234px 429px}}.chatterbox__slide.loaded video{opacity:1}.chatterbox__slide.loaded img{z-index:-10}.chatterbox__slide video{max-width:100%;opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none}@media (max-width: 767.98px){.chatterbox__slide video{position:relative;top:-4px}}.chatterbox__slide img{position:absolute;scale:1.32;top:11%}.chatterbox__wrap{position:absolute;left:8px;right:8px;top:8px;bottom:8px;border-radius:25px;background-color:grey;overflow:hidden}@media (min-width: 1720px){.chatterbox__wrap{border-radius:50px}}.chatterbox__vbtn{position:absolute;left:0;right:0;top:0;bottom:0;opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none}.loaded .chatterbox__vbtn{display:none}.chatterbox__vbtn::before{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);border:0;border-radius:50%;transition:opacity 100ms linear}@media (min-width: 1720px){.chatterbox__vbtn::before{width:109px;height:109px}}@media (max-width: 991.98px){.chatterbox__vbtn::before{width:48px;height:48px}}@media (max-width: 767.98px){.chatterbox__vbtn::before{width:55px;height:55px}}.chatterbox__vbtn::before,.chatterbox__vbtn::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);cursor:pointer}.chatterbox__vbtn::after{border-color:transparent transparent transparent #ffffff;border-style:solid;border-width:15px 0 15px 25px;display:inline-block;margin-left:2px}@media (min-width: 1720px){.chatterbox__vbtn::after{border-width:23px 0 23px 35px;margin-left:4px}}@media (max-width: 991.98px){.chatterbox__vbtn::after{border-width:10px 0 10px 14px}}.chatterbox__vbox{position:relative;display:flex;justify-content:center;align-items:center;height:600px}@media (min-width: 1720px){.chatterbox__vbox{height:827px}}@media (max-width: 1304.98px){.chatterbox__vbox{height:530px}}@media (max-width: 991.98px){.chatterbox__vbox{height:370px}}.chatterbox__mbtns{position:absolute;top:58%;transform:translateY(-50%);left:0;right:0}@media (max-width: 479.98px){.chatterbox__mbtns{top:61.6%}}.chatterbox .title{margin-bottom:60px}@media (max-width: 1304.98px){.chatterbox .title{margin-bottom:39px}}@media (max-width: 767.98px){.chatterbox .title{margin-bottom:50px}}.chatterbox .slick-next{right:-40px}@media (max-width: 1304.98px){.chatterbox .slick-next{right:-10px}}@media (max-width: 991.98px){.chatterbox .slick-next{width:40px;height:40px;background-size:32%;right:5%}}@media (max-width: 479.98px){.chatterbox .slick-next{right:0}}.chatterbox .slick-prev{left:-40px}@media (max-width: 1304.98px){.chatterbox .slick-prev{left:-10px}}@media (max-width: 991.98px){.chatterbox .slick-prev{width:40px;height:40px;background-size:32%;left:5%}}@media (max-width: 479.98px){.chatterbox .slick-prev{left:0}}@media (max-width: 991.98px){.chatterbox .slick-list{overflow:visible}}.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.72}@media (max-width: 1304.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.69}}@media (max-width: 991.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.8}}@media (max-width: 479.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.85}}.slick-center .chatterbox__vbtn{opacity:1;pointer-events:initial;z-index:1}.slick-center .chatterbox__vbox video{pointer-events:initial;cursor:pointer}
|
||||
.chatterbox{margin-bottom:160px}@media (min-width: 1720px){.chatterbox{margin-bottom:180px}}@media (max-width: 1304.98px){.chatterbox{margin-bottom:142px}}@media (max-width: 991.98px){.chatterbox{margin-left:-50vw;margin-right:-50vw;margin-bottom:122px}}@media (max-width: 767.98px){.chatterbox{max-width:100vw;margin:0 auto 121px;position:relative}}.chatterbox__slider{max-width:1200px;margin:0 auto}@media (min-width: 1720px){.chatterbox__slider{max-width:1640px}}@media (max-width: 1304.98px){.chatterbox__slider{max-width:1100px}}@media (max-width: 991.98px){.chatterbox__slider{max-width:720px}}@media (max-width: 767.98px){.chatterbox__slider{max-width:830px;width:830px;left:50%;transform:translateX(-50%)}}@media (max-width: 479.98px){.chatterbox__slider{max-width:initial}}.chatterbox__slide{width:335px;height:615px;background:url("/static/img/webp/phone-border.webp") center no-repeat;transition:scale 0.2s ease-in-out;margin:auto;position:relative}@media (min-width: 1720px){.chatterbox__slide{width:456px;height:836px;background-size:456px 836px}}@media (max-width: 1304.98px){.chatterbox__slide{width:308px;height:565px;background-size:308px 565px}}@media (max-width: 991.98px){.chatterbox__slide{width:206px;height:377px;background-size:206px 377px}}@media (max-width: 767.98px){.chatterbox__slide{width:234px;height:429px;background-size:234px 429px}}.chatterbox__slide.loaded video{opacity:1}.chatterbox__slide.loaded img{z-index:-10}.chatterbox__slide video{max-width:100%;opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none;position:relative}@media (min-width: 1720px){.chatterbox__slide video{top:-2px}}@media (max-width: 1304.98px){.chatterbox__slide video{top:10px}}@media (max-width: 991.98px){.chatterbox__slide video{top:-4px}}@media (max-width: 767.98px){.chatterbox__slide video{top:22px}}.chatterbox__slide img{position:absolute;scale:1.32;top:11%}.chatterbox__wrap{position:absolute;left:8px;right:8px;top:8px;bottom:8px;border-radius:25px;background-color:grey;overflow:hidden}@media (min-width: 1720px){.chatterbox__wrap{border-radius:50px}}.chatterbox__vbtn{position:absolute;left:0;right:0;top:0;bottom:0;opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none}.loaded .chatterbox__vbtn{display:none}.chatterbox__vbtn::before{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);border:0;border-radius:50%;transition:opacity 100ms linear}@media (min-width: 1720px){.chatterbox__vbtn::before{width:109px;height:109px}}@media (max-width: 991.98px){.chatterbox__vbtn::before{width:48px;height:48px}}@media (max-width: 767.98px){.chatterbox__vbtn::before{width:55px;height:55px}}.chatterbox__vbtn::before,.chatterbox__vbtn::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);cursor:pointer}.chatterbox__vbtn::after{border-color:transparent transparent transparent #ffffff;border-style:solid;border-width:15px 0 15px 25px;display:inline-block;margin-left:2px}@media (min-width: 1720px){.chatterbox__vbtn::after{border-width:23px 0 23px 35px;margin-left:4px}}@media (max-width: 991.98px){.chatterbox__vbtn::after{border-width:10px 0 10px 14px}}.chatterbox__vbox{position:relative;display:flex;justify-content:center;align-items:center;height:600px}@media (min-width: 1720px){.chatterbox__vbox{height:827px}}@media (max-width: 1304.98px){.chatterbox__vbox{height:530px}}@media (max-width: 991.98px){.chatterbox__vbox{height:370px}}.chatterbox__mbtns{position:absolute;top:58%;transform:translateY(-50%);left:0;right:0}@media (max-width: 479.98px){.chatterbox__mbtns{top:61.6%}}.chatterbox .title{margin-bottom:60px}@media (max-width: 1304.98px){.chatterbox .title{margin-bottom:39px}}@media (max-width: 767.98px){.chatterbox .title{margin-bottom:50px}}.chatterbox .slick-next{right:-40px}@media (max-width: 1304.98px){.chatterbox .slick-next{right:-10px}}@media (max-width: 991.98px){.chatterbox .slick-next{width:40px;height:40px;background-size:32%;right:5%}}@media (max-width: 479.98px){.chatterbox .slick-next{right:0}}.chatterbox .slick-prev{left:-40px}@media (max-width: 1304.98px){.chatterbox .slick-prev{left:-10px}}@media (max-width: 991.98px){.chatterbox .slick-prev{width:40px;height:40px;background-size:32%;left:5%}}@media (max-width: 479.98px){.chatterbox .slick-prev{left:0}}@media (max-width: 991.98px){.chatterbox .slick-list{overflow:visible}}.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.72}@media (max-width: 1304.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.69}}@media (max-width: 991.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.8}}@media (max-width: 479.98px){.slick-slide:not(.slick-center) .chatterbox__slide{scale:0.85}}.slick-center .chatterbox__vbtn{opacity:1;pointer-events:initial;z-index:1}.slick-center .chatterbox__vbox video{pointer-events:initial;cursor:pointer}
|
||||
|
||||
@@ -3382,6 +3382,11 @@ details[open] summary ~ *{
|
||||
display: none;
|
||||
}
|
||||
|
||||
input.error::placeholder {
|
||||
color: red;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 416 KiB After Width: | Height: | Size: 326 KiB |
|
Before Width: | Height: | Size: 502 KiB After Width: | Height: | Size: 467 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 605 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 706 KiB |
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 884 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 689 KiB |
|
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 168 KiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 257 KiB After Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 172 KiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 381 KiB After Width: | Height: | Size: 380 KiB |
|
Before Width: | Height: | Size: 502 KiB After Width: | Height: | Size: 501 KiB |
@@ -27,11 +27,12 @@ function SendLoginForm(el){
|
||||
|
||||
|
||||
|
||||
if(url === '/user_account/login/'){
|
||||
if(url === '/user_account/login/') {
|
||||
localStorage.setItem('needed_fbq', true)
|
||||
location.href = data.redirect_url//`/profile/page/dashboard/`
|
||||
window.sessionStorage.removeItem('mailingSubscribeRequired')
|
||||
window.sessionStorage.removeItem('email')
|
||||
} else if(url === '/user_account/password_recovery/'){
|
||||
} else if (url === '/user_account/password_recovery/'){
|
||||
document.getElementById('password_recovery').innerHTML = data.message
|
||||
|
||||
}
|
||||
|
||||
@@ -36,26 +36,26 @@ function SendRegistrationForm(el, user_id){
|
||||
window.sessionStorage.removeItem('mailingSubscribeRequired')
|
||||
window.sessionStorage.removeItem('email')
|
||||
|
||||
// fbq('track', 'Contact');
|
||||
fbq('track', 'Contact');
|
||||
|
||||
|
||||
ttq.identify({
|
||||
"email": "<hashed_email_address>", // string. The email of the customer if available. It must be hashed with SHA-256 on the client side.
|
||||
"phone_number": "<hashed_phone_number>", // string. The phone number of the customer if available. It must be hashed with SHA-256 on the client side.
|
||||
"external_id": "<hashed_extenal_id>" // string. Any unique identifier, such as loyalty membership IDs, user IDs, and external cookie IDs.It must be hashed with SHA-256 on the client side.
|
||||
});
|
||||
// ttq.identify({
|
||||
// "email": "<hashed_email_address>", // string. The email of the customer if available. It must be hashed with SHA-256 on the client side.
|
||||
// "phone_number": "<hashed_phone_number>", // string. The phone number of the customer if available. It must be hashed with SHA-256 on the client side.
|
||||
// "external_id": "<hashed_extenal_id>" // string. Any unique identifier, such as loyalty membership IDs, user IDs, and external cookie IDs.It must be hashed with SHA-256 on the client side.
|
||||
// });
|
||||
|
||||
ttq.track('CompleteRegistration', {
|
||||
"contents": [
|
||||
{
|
||||
"content_id": "<content_identifier>", // string. ID of the product. Example: "1077218".
|
||||
"content_type": "<content_type>", // string. Either product or product_group.
|
||||
"content_name": "<content_name>" // string. The name of the page or product. Example: "shirt".
|
||||
}
|
||||
],
|
||||
"value": "<content_value>", // number. Value of the order or items sold. Example: 100.
|
||||
"currency": "<content_currency>" // string. The 4217 currency code. Example: "USD".
|
||||
});
|
||||
// ttq.track('CompleteRegistration', {
|
||||
// "contents": [
|
||||
// {
|
||||
// "content_id": "<content_identifier>", // string. ID of the product. Example: "1077218".
|
||||
// "content_type": "<content_type>", // string. Either product or product_group.
|
||||
// "content_name": "<content_name>" // string. The name of the page or product. Example: "shirt".
|
||||
// }
|
||||
// ],
|
||||
// "value": "<content_value>", // number. Value of the order or items sold. Example: 100.
|
||||
// "currency": "<content_currency>" // string. The 4217 currency code. Example: "USD".
|
||||
// });
|
||||
|
||||
|
||||
|
||||
@@ -68,9 +68,22 @@ function SendRegistrationForm(el, user_id){
|
||||
|
||||
},
|
||||
error: function (data, exception){
|
||||
document.querySelector(".register").innerHTML = data.responseJSON.html
|
||||
if(data.responseJSON.html){
|
||||
document.querySelector(".register").innerHTML = data.responseJSON.html
|
||||
} else if(data.responseJSON.error){
|
||||
const passwordInput = document.querySelector('input[name="pass"]');
|
||||
|
||||
if (passwordInput && data.responseJSON.error) {
|
||||
|
||||
passwordInput.placeholder = data.responseJSON.error;
|
||||
|
||||
passwordInput.value = '';
|
||||
|
||||
passwordInput.classList.add('error');
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -96,10 +96,22 @@
|
||||
opacity: 0;
|
||||
transition: opacity 0.2s ease-in-out;
|
||||
pointer-events: none;
|
||||
position: relative;
|
||||
|
||||
@media (min-width: 1720px) {
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
@media (max-width: 1304.98px) {
|
||||
top: 10px;
|
||||
}
|
||||
|
||||
@media (max-width: 991.98px) {
|
||||
top: -4px;
|
||||
}
|
||||
|
||||
@media (max-width: 767.98px) {
|
||||
position: relative;
|
||||
top: -4px;
|
||||
top: 22px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<a href="https://vk.com/club226251027" target="_blank"><img class="svg" src="/static/img/svg/vk.svg"></a>
|
||||
<a href="https://www.tiktok.com/@tripwithbonus?_t=8qHingfQWNq" target="_blank"><img class="svg" src="/static/img/svg/tiktok.svg"></a>
|
||||
<a href="https://youtube.com/@tripwb?si=oiNZrtiOqx6OePJv" target="_blank"><img class="svg" src="/static/img/svg/Youtube.svg"></a>
|
||||
<a href="https://t.me/+XA6A8Ls7fYw2Yzli" target="_blank"><img class="svg" src="/static/img/svg/Telegram.svg"></a>
|
||||
<a href="https://t.me/tripWB" target="_blank"><img class="svg" src="/static/img/svg/Telegram.svg"></a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="second-column">
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<span id="sub_title_static">{% trans "Быстро, без посредников, без ограничений" %}</span>
|
||||
{% endif %}
|
||||
{% if page.url == 'for_movers' %}
|
||||
<span id="sub_title_static">{% trans "Общайся, перевози послылки и получай бонусы" %}</span>
|
||||
<span id="sub_title_static">{% trans "Общайся, перевози посылки и получай бонусы" %}</span>
|
||||
{% endif %}
|
||||
<div class="button_container">
|
||||
|
||||
|
||||
@@ -94,5 +94,15 @@
|
||||
<option value="last" {% if route_form.initial.sort == item.0 %} selected{% endif %}>{% translate "По последним" %}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div><!-- Yandex.RTB R-A-14631137-1 -->
|
||||
<div id="yandex_rtb_R-A-14631137-1"></div>
|
||||
<script>
|
||||
window.yaContextCb.push(() => {
|
||||
Ya.Context.AdvManager.render({
|
||||
"blockId": "R-A-14631137-1",
|
||||
"renderTo": "yandex_rtb_R-A-14631137-1"
|
||||
})
|
||||
})
|
||||
</script></div>
|
||||
|
||||
{#</div>#}
|
||||
@@ -649,7 +649,7 @@
|
||||
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:title" content="Партнерская программа доставки посылок в СНГ | TWB">
|
||||
<meta property="og:description" content="Хотите стать партнером? ✓ Выгодные условия нашим партнерам ✓ Действует система бонусов и накоплений ➡️ Становитесь нашим партнерам">
|
||||
<meta property="og:description" content="Хотите стать партнером? ✓ Выгодные условия нашим партнерам ✓ Действует система бонусов и накоплений ➡️ Становитесь нашим партнером">
|
||||
<meta property="og:url" content="https://tripwb.com/ru/page/partners/">
|
||||
<meta property="og:image" content="https://tripwb.com/static/img/png/finlogo.png">
|
||||
<meta property="og:site_name" content="TWB">
|
||||
@@ -657,7 +657,7 @@
|
||||
<meta property="fb:app_id" content="tripwithbonus">
|
||||
|
||||
<meta name="twitter:title" content="Партнерская программа доставки посылок в СНГ | TWB">
|
||||
<meta name="twitter:description" content="Хотите стать партнером? ✓ Выгодные условия нашим партнерам ✓ Действует система бонусов и накоплений ➡️ Становитесь нашим партнерам">
|
||||
<meta name="twitter:description" content="Хотите стать партнером? ✓ Выгодные условия нашим партнерам ✓ Действует система бонусов и накоплений ➡️ Становитесь нашим партнером">
|
||||
<meta name="twitter:card" content="summary">
|
||||
|
||||
<script type="application/ld+json">
|
||||
|
||||
@@ -7,9 +7,63 @@
|
||||
<link rel="stylesheet" href="{% static "css/slick.css" %}">
|
||||
<script src="{% static "js/slick.min.js" %}"></script>
|
||||
<script src="{% static "js/push/lazyload.min.js" %}"></script>
|
||||
|
||||
<!-- Meta Pixel Code -->
|
||||
<script>
|
||||
!function(f,b,e,v,n,t,s)
|
||||
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||
'https://connect.facebook.net/en_US/fbevents.js');
|
||||
fbq('init', '1123814969330706');
|
||||
fbq('track', 'PageView');
|
||||
</script>
|
||||
<noscript><img height="1" width="1" style="display:none"
|
||||
src="https://www.facebook.com/tr?id=1123814969330706&ev=PageView&noscript=1"
|
||||
/></noscript>
|
||||
<!-- End Meta Pixel Code -->
|
||||
|
||||
<!-- TikTok Pixel Code Start -->
|
||||
<script>
|
||||
!function (w, d, t) {
|
||||
w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie","holdConsent","revokeConsent","grantConsent"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i<ttq.methods.length;i++)ttq.setAndDefer(ttq,ttq.methods[i]);ttq.instance=function(t){for(
|
||||
var e=ttq._i[t]||[],n=0;n<ttq.methods.length;n++)ttq.setAndDefer(e,ttq.methods[n]);return e},ttq.load=function(e,n){var r="https://analytics.tiktok.com/i18n/pixel/events.js",o=n&&n.partner;ttq._i=ttq._i||{},ttq._i[e]=[],ttq._i[e]._u=r,ttq._t=ttq._t||{},ttq._t[e]=+new Date,ttq._o=ttq._o||{},ttq._o[e]=n||{};n=document.createElement("script")
|
||||
;n.type="text/javascript",n.async=!0,n.src=r+"?sdkid="+e+"&lib="+t;e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(n,e)};
|
||||
|
||||
|
||||
ttq.load('CVE2FBRC77U60E3J820G');
|
||||
ttq.page();
|
||||
}(window, document, 'ttq');
|
||||
</script>
|
||||
<!-- TikTok Pixel Code End -->
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Yandex.Metrika counter -->
|
||||
<script type="text/javascript" >
|
||||
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
|
||||
m[i].l=1*new Date();
|
||||
for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
|
||||
k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
|
||||
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
|
||||
|
||||
ym(97070898, "init", {
|
||||
clickmap:true,
|
||||
trackLinks:true,
|
||||
accurateTrackBounce:true,
|
||||
webvisor:true,
|
||||
ecommerce:"dataLayer"
|
||||
});
|
||||
</script>
|
||||
<noscript><div><img src="https://mc.yandex.ru/watch/97070898" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
|
||||
<!-- /Yandex.Metrika counter -->
|
||||
|
||||
<section class="presentation">
|
||||
<div class="presentation__top">
|
||||
<h1 class="presentation__title">
|
||||
@@ -165,7 +219,7 @@
|
||||
<div class="subtitle">
|
||||
{% translate "Чтобы разместить объявление - зарегистрируйтесь" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="easy__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
</section>
|
||||
|
||||
@@ -183,9 +237,9 @@
|
||||
<div class="h3">
|
||||
{% translate "Хотите перевезти посылку и окупить стоимость дороги, топлива?" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}" class="use__btn btn btn--primary">{% translate "Найти посылку" %}</a>
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;" class="use__btn btn btn--primary">{% translate "Найти посылку" %}</a>
|
||||
<br/>
|
||||
<a href="{% url "registration_page" %}" class="use__link">{% translate "Зарегистрироваться" %}</a>
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;" class="use__link">{% translate "Зарегистрироваться" %}</a>
|
||||
</section>
|
||||
|
||||
<section class="benefits" id="benefits">
|
||||
@@ -244,6 +298,7 @@
|
||||
<video
|
||||
data-src="{{ MEDIA_URL }}{{ media_item.video }}"
|
||||
poster="{{ MEDIA_URL }}{{ media_item.picture }}"
|
||||
playsinline="false"
|
||||
controls
|
||||
autoplay
|
||||
></video>
|
||||
@@ -379,7 +434,7 @@
|
||||
<div class="subtitle">
|
||||
{% translate "Зарегистрируйся на <a href='https://tripwb.com/' class='animate__link'>Trip With Bonus</a> прямо сейчас, размести бесплатно объявление и получи отклики от людей с посылками" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="use__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", () => {
|
||||
@@ -462,7 +517,7 @@
|
||||
<div class="title">
|
||||
{% translate "Размести свое объявление какую посылку ты можешь перевезти прямо сейчас " %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="use__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
</section>
|
||||
|
||||
@@ -483,7 +538,7 @@
|
||||
<div class="h3">
|
||||
{% translate "Зарегистрируйся бесплатно прямо сейчас и начни размещать объявления о перевозки посылки" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="sore__btn btn btn--primary">{% translate "Зарегистрироваться" %}</a>
|
||||
<br/>
|
||||
</div>
|
||||
|
||||
@@ -9,6 +9,8 @@
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<meta name="facebook-domain-verification" content="e9xtao0o9fvuc3gbturkp57qi2upqb" />
|
||||
<div class="top_block_static_wrapper_main">
|
||||
<div class="top_block_static">
|
||||
|
||||
|
||||
@@ -7,9 +7,64 @@
|
||||
<link rel="stylesheet" href="{% static "css/slick.css" %}">
|
||||
<script src="{% static "js/slick.min.js" %}"></script>
|
||||
<script src="{% static "js/push/lazyload.min.js" %}"></script>
|
||||
|
||||
<!-- Meta Pixel Code -->
|
||||
<script>
|
||||
!function(f,b,e,v,n,t,s)
|
||||
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||
'https://connect.facebook.net/en_US/fbevents.js');
|
||||
fbq('init', '1009253847591455');
|
||||
fbq('track', 'PageView');
|
||||
</script>
|
||||
<noscript><img height="1" width="1" style="display:none"
|
||||
src="https://www.facebook.com/tr?id=1009253847591455&ev=PageView&noscript=1"
|
||||
/></noscript>
|
||||
<!-- End Meta Pixel Code -->
|
||||
|
||||
<!-- TikTok Pixel Code Start -->
|
||||
<script>
|
||||
!function (w, d, t) {
|
||||
w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie","holdConsent","revokeConsent","grantConsent"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i<ttq.methods.length;i++)ttq.setAndDefer(ttq,ttq.methods[i]);ttq.instance=function(t){for(
|
||||
var e=ttq._i[t]||[],n=0;n<ttq.methods.length;n++)ttq.setAndDefer(e,ttq.methods[n]);return e},ttq.load=function(e,n){var r="https://analytics.tiktok.com/i18n/pixel/events.js",o=n&&n.partner;ttq._i=ttq._i||{},ttq._i[e]=[],ttq._i[e]._u=r,ttq._t=ttq._t||{},ttq._t[e]=+new Date,ttq._o=ttq._o||{},ttq._o[e]=n||{};n=document.createElement("script")
|
||||
;n.type="text/javascript",n.async=!0,n.src=r+"?sdkid="+e+"&lib="+t;e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(n,e)};
|
||||
|
||||
|
||||
ttq.load('CVE2H93C77U83BE8I4U0');
|
||||
ttq.page();
|
||||
}(window, document, 'ttq');
|
||||
</script>
|
||||
<!-- TikTok Pixel Code End -->
|
||||
|
||||
<meta name="facebook-domain-verification" content="e9xtao0o9fvuc3gbturkp57qi2upqb" />
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Yandex.Metrika counter -->
|
||||
<script type="text/javascript" >
|
||||
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
|
||||
m[i].l=1*new Date();
|
||||
for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
|
||||
k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
|
||||
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
|
||||
|
||||
ym(97070898, "init", {
|
||||
clickmap:true,
|
||||
trackLinks:true,
|
||||
accurateTrackBounce:true,
|
||||
webvisor:true,
|
||||
ecommerce:"dataLayer"
|
||||
});
|
||||
</script>
|
||||
<noscript><div><img src="https://mc.yandex.ru/watch/97070898" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
|
||||
<!-- /Yandex.Metrika counter -->
|
||||
|
||||
|
||||
<section class="presentation">
|
||||
<div class="presentation__top">
|
||||
<h1 class="presentation__title">
|
||||
@@ -166,7 +221,7 @@
|
||||
<div class="subtitle">
|
||||
{% translate "Чтобы разместить объявление - зарегистрируйтесь" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="easy__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
</section>
|
||||
<section class="use">
|
||||
@@ -184,9 +239,9 @@
|
||||
<div class="h3">
|
||||
{% translate "Нужно отправить посылку партнеру, родителям или знакомым?" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}" class="use__btn btn btn--primary">{% translate "Найти перевозчика" %}</a>
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;" class="use__btn btn btn--primary">{% translate "Найти перевозчика" %}</a>
|
||||
<br/>
|
||||
<a href="{% url "registration_page" %}" class="use__link">{% translate "Зарегистрироваться" %}</a>
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;" class="use__link">{% translate "Зарегистрироваться" %}</a>
|
||||
</section>
|
||||
<section class="diff">
|
||||
<div class="title">{% translate "Чем мы отличаемся от классических почтовых сервисов" %}</div>
|
||||
@@ -258,6 +313,7 @@
|
||||
<video
|
||||
data-src="{{ MEDIA_URL }}{{ media_item.video }}"
|
||||
poster="{{ MEDIA_URL }}{{ media_item.picture }}"
|
||||
playsinline="false"
|
||||
controls
|
||||
autoplay
|
||||
></video>
|
||||
@@ -391,7 +447,7 @@
|
||||
<div class="subtitle">
|
||||
{% translate "Зарегистрируйся на <a href='https://tripwb.com/' class='animate__link'>Trip With Bonus</a> прямо сейчас, размести бесплатно объявление и получи запросы на перевозку твоей посылки" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="use__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", () => {
|
||||
@@ -468,11 +524,11 @@
|
||||
</div>
|
||||
<div class="benefits__third">
|
||||
<div class="benefits__item">
|
||||
<h2>{% translate "Уведомления" %}</h2>
|
||||
<h2>{% translate "Удобный поиск" %}</h2>
|
||||
<p>{% translate "Можешь самостоятельно найти перевозчиков или разместить объявление на сайте." %}</p>
|
||||
</div>
|
||||
<div class="benefits__item">
|
||||
<h2>{% translate "Удобный поиск" %}</h2>
|
||||
<h2>{% translate "Уведомления" %}</h2>
|
||||
<p>{% translate "Как только по твоему объявлению найдется перевозчик мы сообщим на E-mail." %}</p>
|
||||
</div>
|
||||
<div class="benefits__item">
|
||||
@@ -531,7 +587,7 @@
|
||||
<div class="subtitle">
|
||||
{% translate "Достаточно просто зайти на сайт, разместить объявление в пару кликов и дождаться откликов от попутчиков." %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="use__btn btn btn--primary">{% translate "Разместить объявление" %}</a>
|
||||
</section>
|
||||
<section class="sore">
|
||||
@@ -539,7 +595,7 @@
|
||||
{% translate "О наболевшем..." %}
|
||||
</div>
|
||||
<div class="subtitle">
|
||||
{% translate "Мы знаем, каково это без конца и края закидывать сообщения в чаты и группы в социальных сетях, в надежде найти человека, который едет или летит в нужном направлении, чтобы передать посылоку своим родным или близким. Очень часто ещё и стоимость пересылки в обычных почтовых сервисах выше стоимости самой посылки." %}
|
||||
{% translate "Мы знаем, каково это без конца и края закидывать сообщения в чаты и группы в социальных сетях, в надежде найти человека, который едет или летит в нужном направлении, чтобы передать посылку своим родным или близким. Очень часто ещё и стоимость пересылки в обычных почтовых сервисах выше стоимости самой посылки." %}
|
||||
</div>
|
||||
<picture>
|
||||
<source srcset="{% static "img/png/mover/sore-1720.png" %}" media="(min-width: 1720px)"/>
|
||||
@@ -551,7 +607,7 @@
|
||||
<div class="h3">
|
||||
{% translate "Зарегистрируйте бесплатно прямо сейчас и размести свое первое объявление об отправке посылки" %}
|
||||
</div>
|
||||
<a href="{% url "registration_page" %}"
|
||||
<a href="{% url "registration_page" %}" onclick="ym(97070898,'reachGoal','Registration'); return true;"
|
||||
class="sore__btn btn btn--primary">{% translate "Зарегистрироваться и разместить" %}</a>
|
||||
<br/>
|
||||
</div>
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
{% block meta %}
|
||||
<script src='{% static "js/authorization.js" %}'></script>
|
||||
<script src='{% static "js/registration.js" %}'></script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
@@ -3,8 +3,29 @@
|
||||
|
||||
{% block meta %}
|
||||
<script src='{% static "js/registration.js" %}'></script>
|
||||
<script>fbq('track', 'Contact');</script>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Meta Pixel Code -->
|
||||
<script>
|
||||
!function(f,b,e,v,n,t,s)
|
||||
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||
'https://connect.facebook.net/en_US/fbevents.js');
|
||||
fbq('init', '1123814969330706');
|
||||
fbq('track', 'PageView');
|
||||
</script>
|
||||
<noscript><img height="1" width="1" style="display:none"
|
||||
src="https://www.facebook.com/tr?id=1123814969330706&ev=PageView&noscript=1"
|
||||
/></noscript>
|
||||
<!-- End Meta Pixel Code -->
|
||||
|
||||
|
||||
{% include 'forms/f_registration.html' %}
|
||||
{% endblock %}
|
||||
@@ -33,6 +33,27 @@
|
||||
|
||||
|
||||
<script defer src='{% static "js/check_new_messages.js" %}'></script>
|
||||
<script>
|
||||
!function(f,b,e,v,n,t,s)
|
||||
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
||||
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
|
||||
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
|
||||
n.queue=[];t=b.createElement(e);t.async=!0;
|
||||
t.src=v;s=b.getElementsByTagName(e)[0];
|
||||
s.parentNode.insertBefore(t,s)}(window, document,'script',
|
||||
'https://connect.facebook.net/en_US/fbevents.js');
|
||||
fbq('init', '1123814969330706');
|
||||
fbq('track', 'PageView');
|
||||
</script>
|
||||
<noscript><img height="1" width="1" style="display:none"
|
||||
src="https://www.facebook.com/tr?id=1123814969330706&ev=PageView&noscript=1"
|
||||
/></noscript>
|
||||
<script>
|
||||
if (localStorage.getItem("needed_fbq")){
|
||||
fbq('track', 'Contact');
|
||||
localStorage.removeItem("needed_fbq")
|
||||
}
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
|
||||
@@ -17,6 +17,14 @@
|
||||
{% webpush_header %}
|
||||
<meta name="google-site-verification" content="4V4upJSK2_4MBrr5ZXjcCLw3bBwXc4_gsnKudJAaWqI" />
|
||||
<meta name="yandex-verification" content="b8a976575e41fbbc" />
|
||||
<meta name="google-adsense-account" content="ca-pub-3479005276839542">
|
||||
|
||||
<!-- Yandex.RTB -->
|
||||
<script>window.yaContextCb=window.yaContextCb||[]</script>
|
||||
<script src="https://yandex.ru/ads/system/context.js" async></script>
|
||||
|
||||
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-3479005276839542"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
{% include "inter/meta_OpenGraph_Schema.html" %}
|
||||
|
||||
|
||||