Merge branch 'PR-9' into PR-14remotes/origin/PR-46
commit
2aefad6a99
54 changed files with 1313 additions and 417 deletions
@ -1,12 +0,0 @@ |
|||||||
DATABASES = { |
|
||||||
'default': { |
|
||||||
'ENGINE': 'django.db.backends.postgresql_psycopg2', |
|
||||||
'NAME': 'proekton2', |
|
||||||
'USER': 'postgres', |
|
||||||
'PASSWORD': 'gum1756', |
|
||||||
'HOST': 'localhost', |
|
||||||
'PORT': '', |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
TEMPLATE_DEBUG = True |
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 257 KiB After Width: | Height: | Size: 257 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 57 KiB |
@ -0,0 +1,81 @@ |
|||||||
|
/******/ (function(modules) { // webpackBootstrap
|
||||||
|
/******/ // The module cache
|
||||||
|
/******/ var installedModules = {}; |
||||||
|
|
||||||
|
/******/ // The require function
|
||||||
|
/******/ function __webpack_require__(moduleId) { |
||||||
|
|
||||||
|
/******/ // Check if module is in cache
|
||||||
|
/******/ if(installedModules[moduleId]) |
||||||
|
/******/ return installedModules[moduleId].exports; |
||||||
|
|
||||||
|
/******/ // Create a new module (and put it into the cache)
|
||||||
|
/******/ var module = installedModules[moduleId] = { |
||||||
|
/******/ exports: {}, |
||||||
|
/******/ id: moduleId, |
||||||
|
/******/ loaded: false |
||||||
|
/******/ }; |
||||||
|
|
||||||
|
/******/ // Execute the module function
|
||||||
|
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); |
||||||
|
|
||||||
|
/******/ // Flag the module as loaded
|
||||||
|
/******/ module.loaded = true; |
||||||
|
|
||||||
|
/******/ // Return the exports of the module
|
||||||
|
/******/ return module.exports; |
||||||
|
/******/ } |
||||||
|
|
||||||
|
|
||||||
|
/******/ // expose the modules object (__webpack_modules__)
|
||||||
|
/******/ __webpack_require__.m = modules; |
||||||
|
|
||||||
|
/******/ // expose the module cache
|
||||||
|
/******/ __webpack_require__.c = installedModules; |
||||||
|
|
||||||
|
/******/ // __webpack_public_path__
|
||||||
|
/******/ __webpack_require__.p = ""; |
||||||
|
|
||||||
|
/******/ // Load entry module and return exports
|
||||||
|
/******/ return __webpack_require__(0); |
||||||
|
/******/ }) |
||||||
|
/************************************************************************/ |
||||||
|
/******/ ({ |
||||||
|
|
||||||
|
/***/ 0: |
||||||
|
/***/ function(module, exports, __webpack_require__) { |
||||||
|
|
||||||
|
'use strict'; |
||||||
|
|
||||||
|
var _popupYoutube = __webpack_require__(12); |
||||||
|
|
||||||
|
$(function () { |
||||||
|
(0, _popupYoutube.popupYoutubeInit)(); |
||||||
|
}); |
||||||
|
|
||||||
|
/***/ }, |
||||||
|
|
||||||
|
/***/ 12: |
||||||
|
/***/ function(module, exports) { |
||||||
|
|
||||||
|
'use strict'; |
||||||
|
|
||||||
|
Object.defineProperty(exports, "__esModule", { |
||||||
|
value: true |
||||||
|
}); |
||||||
|
function popupYoutubeInit() { |
||||||
|
$('.popup-youtube').magnificPopup({ |
||||||
|
disableOn: 700, |
||||||
|
type: 'iframe', |
||||||
|
mainClass: 'mfp-fade', |
||||||
|
removalDelay: 160, |
||||||
|
preloader: false, |
||||||
|
fixedContentPos: false |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
exports.popupYoutubeInit = popupYoutubeInit; |
||||||
|
|
||||||
|
/***/ } |
||||||
|
|
||||||
|
/******/ }); |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
import {popupYoutubeInit} from './seeds/popup-youtube' |
||||||
|
|
||||||
|
$(function () { |
||||||
|
popupYoutubeInit() |
||||||
|
}); |
||||||
@ -0,0 +1,67 @@ |
|||||||
|
const $form = $('#form-registration'); |
||||||
|
|
||||||
|
function clearErrors() { |
||||||
|
let $error_tags = $form.find('.errorlist'); |
||||||
|
if ($error_tags.length > 0) $error_tags.remove(); |
||||||
|
} |
||||||
|
|
||||||
|
function sendData(form_data) { |
||||||
|
// console.log("form_data = ", form_data);
|
||||||
|
$.ajax({ |
||||||
|
url: '/users/register/', |
||||||
|
type: 'post', |
||||||
|
data: form_data, |
||||||
|
success: function (data) { |
||||||
|
// console.log("success data -->", data);
|
||||||
|
$('#registrationFormModal').modal('toggle'); |
||||||
|
$('input[name=not_auth_user_id]').val(data.pk); |
||||||
|
$('#not_customer').hide(); |
||||||
|
$('#is_customer').show(); |
||||||
|
}, |
||||||
|
error: function (xhr, ajaxOptions, thrownError) { |
||||||
|
let status = xhr.status; |
||||||
|
if (status == 400) { |
||||||
|
let data = JSON.parse(xhr.responseText); |
||||||
|
$.each(data, function (key, value) { |
||||||
|
let ul = $("<ul class='errorlist'></ul>"); |
||||||
|
for (let error of value) { |
||||||
|
ul.append(`<li>${error}</li>`) |
||||||
|
} |
||||||
|
let $field; |
||||||
|
if (key == 'captcha_html') { |
||||||
|
// console.log("captcha html = ", key, '/', value);
|
||||||
|
$form.find('.captcha').html(value); |
||||||
|
return; |
||||||
|
} else if (key == 'captcha') { |
||||||
|
$field = $form.find('.g-recaptcha'); |
||||||
|
} else if (key == 'tos') { |
||||||
|
$field = $form.find(`input[name=${key}]`).parent(); |
||||||
|
} else { |
||||||
|
$field = $form.find(`input[name=${key}]`); |
||||||
|
if ($field.length == 0) console.log(`!!!field ${key} not found`); |
||||||
|
} |
||||||
|
if ($field.length > 0) $field.parent().append(ul); |
||||||
|
|
||||||
|
}); |
||||||
|
// console.log('captcha error = ', data.captcha);
|
||||||
|
// console.log('data type = ', typeof data);
|
||||||
|
} |
||||||
|
// console.log("data = ", xhr.responseText);
|
||||||
|
// console.log(ajaxOptions);
|
||||||
|
// console.log(thrownError);
|
||||||
|
} |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
function ajaxRegistrationInit(user_type) { |
||||||
|
// const $form = $('#form-registration');
|
||||||
|
$form.on("submit", function (e) { |
||||||
|
e.preventDefault(); |
||||||
|
// get form data and add user_type
|
||||||
|
clearErrors(); |
||||||
|
let form_data = $form.serialize() + "&user_type=" + encodeURIComponent(user_type); |
||||||
|
sendData(form_data); |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
export {ajaxRegistrationInit} |
||||||
@ -0,0 +1,12 @@ |
|||||||
|
function popupYoutubeInit() { |
||||||
|
$('.popup-youtube').magnificPopup({ |
||||||
|
disableOn: 700, |
||||||
|
type: 'iframe', |
||||||
|
mainClass: 'mfp-fade', |
||||||
|
removalDelay: 160, |
||||||
|
preloader: false, |
||||||
|
fixedContentPos: false |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
export {popupYoutubeInit} |
||||||
@ -1,6 +1,17 @@ |
|||||||
function sendData(){ |
function sendData(form_data) { |
||||||
|
console.log("form_data = ", form_data); |
||||||
$.ajax({ |
$.ajax({ |
||||||
url: '', |
url: '/users/register/', |
||||||
|
type: 'post', |
||||||
|
data: form_data, |
||||||
|
success: function (data) { |
||||||
|
console.log("success data -->", data) |
||||||
|
}, |
||||||
|
error: function (xhr, ajaxOptions, thrownError) { |
||||||
|
console.log("status = ", xhr.status); |
||||||
|
console.log("data = ", xhr.responseText); |
||||||
|
console.log(ajaxOptions); |
||||||
|
console.log(thrownError); |
||||||
|
} |
||||||
}) |
}) |
||||||
} |
} |
||||||
@ -1,6 +1,24 @@ |
|||||||
|
.mod-align-bottom, |
||||||
.vertical-bottom |
.vertical-bottom |
||||||
|
//deprecated |
||||||
|
display: flex |
||||||
|
-ms-flex-align: end |
||||||
|
-webkit-align-items: flex-end |
||||||
|
-webkit-box-align: end |
||||||
|
align-items: flex-end |
||||||
|
|
||||||
|
.mod-align-center |
||||||
display: flex |
display: flex |
||||||
-ms-flex-align: center |
-ms-flex-align: center |
||||||
-webkit-align-items: center |
-webkit-align-items: center |
||||||
-webkit-box-align: center |
-webkit-box-align: center |
||||||
align-items: flex-end |
align-items: center |
||||||
|
|
||||||
|
.mod-no-padding |
||||||
|
padding: 0 !important |
||||||
|
|
||||||
|
.mod-row-eq-height |
||||||
|
display: -webkit-box |
||||||
|
display: -webkit-flex |
||||||
|
display: -ms-flexbox |
||||||
|
display: flex |
||||||
|
|||||||
@ -1,100 +1,145 @@ |
|||||||
{% extends 'partials/base.html' %} |
{% extends 'partials/base.html' %} |
||||||
|
{% load staticfiles %} |
||||||
|
{% load sass_tags %} |
||||||
|
{% load thumbnail %} |
||||||
|
{% block old_css %}{% endblock %} |
||||||
|
{% block head_css %} |
||||||
|
<link rel='stylesheet' href='{% static "js/magnific-popup.css" %}'> |
||||||
|
<link rel='stylesheet' href='{% sass_src "sass/main.sass" %}'> |
||||||
|
<link rel='stylesheet' href='{% sass_src "partials/sass/home.sass" %}'> |
||||||
|
{% endblock %} |
||||||
|
|
||||||
{% block content %} |
{% block content %} |
||||||
<section class="mainContainer"> |
|
||||||
{% include 'partials/header.html' %} |
{% include 'partials/header.html' %} |
||||||
|
<div class="home"> |
||||||
<div class="container-fluid"> |
<div class="container"> |
||||||
<div class="row"> |
<div class="row"> |
||||||
|
<div class="col-lg-12"> |
||||||
<p class="welcomeMain">{{ main_settings.heading }}</p> |
<p class="welcomeMain">{{ main_settings.heading }}</p> |
||||||
</div> |
</div> |
||||||
</div> |
</div> |
||||||
|
|
||||||
<div class="container-fluid"> |
<div class="row mod-row-eq-height"> |
||||||
<div class="row"> |
<div class="col-lg-5 col-lg-offset-1 mod-no-padding"> |
||||||
<div class="col-lg-6"> |
<div class="infoBlock customer"> |
||||||
<div class="changeBlock changeBlock2"> |
|
||||||
{% if request.user.is_authenticated and request.user.is_customer %} |
{% if request.user.is_authenticated and request.user.is_customer %} |
||||||
<a href="{% url 'users:customer-profile-open-projects' pk=request.user.pk %}">Я заказчик</a> |
<a class="to-profile" |
||||||
|
href="{% url 'users:customer-profile-open-projects' pk=request.user.pk %}">Я заказчик</a> |
||||||
{% else %} |
{% else %} |
||||||
<a href="{% url 'registration_register' %}?type=customer">Я заказчик</a> |
<a class="to-profile" href="{% url 'registration_register' %}?type=customer">Я заказчик</a> |
||||||
{% endif %} |
{% endif %} |
||||||
<p> |
<p> |
||||||
{{ main_settings.customer_text|safe }} |
<ul class="customer-list"> |
||||||
</p> |
<li> |
||||||
|
<div class="icon-1"></div> |
||||||
|
<div class="text"> |
||||||
|
Ресурс для специалистов по проектированию, дизайну, оформлению и сопровождению |
||||||
|
проектной документации |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-2"></div> |
||||||
|
<div class="text"> |
||||||
|
Удобный и быстрый поиск исполнителей |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-3"></div> |
||||||
|
<div class="text"> |
||||||
|
Готовые сформированные группы исполнителей |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-4"></div> |
||||||
|
<div class="text"> |
||||||
|
Безопасная сделка (договор без риска) |
||||||
</div> |
</div> |
||||||
<div class="square"> |
</li> |
||||||
<div class="insetSquare"></div> |
<li> |
||||||
|
<div class="icon-5"></div> |
||||||
|
<div class="text"> |
||||||
|
Адекватная оценка стоимости работы |
||||||
</div> |
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-6"></div> |
||||||
|
<div class="text"> |
||||||
|
Возможность купить готовые проекты, работы |
||||||
</div> |
</div> |
||||||
<div class="col-lg-6"> |
</li> |
||||||
<div class="changeBlock changeBlock1"> |
</ul> |
||||||
|
</p> |
||||||
|
<a class="create" href="{% url 'projects:customer-project-create' %}">Разместить заказ</a> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="col-lg-5 mod-no-padding"> |
||||||
|
<div class="infoBlock contractor"> |
||||||
{% if request.user.is_authenticated and request.user.is_contractor %} |
{% if request.user.is_authenticated and request.user.is_contractor %} |
||||||
<a href="{% url 'users:contractor-profile' pk=request.user.pk %}">Я исполнитель</a> |
<a class="to-profile" href="{% url 'users:contractor-profile' pk=request.user.pk %}">Я |
||||||
|
исполнитель</a> |
||||||
{% else %} |
{% else %} |
||||||
<a href="{% url 'registration_register' %}?type=contractor">Я исполнитель</a> |
<a class="to-profile" href="{% url 'registration_register' %}?type=contractor">Я |
||||||
|
исполнитель</a> |
||||||
{% endif %} |
{% endif %} |
||||||
<p> |
<p> |
||||||
{{ main_settings.contractor_text|safe }} |
<ul class="contractor-list"> |
||||||
</p> |
<li> |
||||||
|
<div class="icon-7"></div> |
||||||
|
<div class="text"> |
||||||
|
Большой выбор заказов для исполнителей |
||||||
</div> |
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-8"></div> |
||||||
|
<div class="text"> |
||||||
|
Удобный и быстрый поиск заказчиков |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-9"></div> |
||||||
|
<div class="text"> |
||||||
|
Безопасная сделка (договор без риска) |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-10"></div> |
||||||
|
<div class="text"> |
||||||
|
Печать, брошюровка и доставка проектной документации |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-11"></div> |
||||||
|
<div class="text"> |
||||||
|
Возможность продать готовые проекты, работы |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
<li> |
||||||
|
<div class="icon-12"></div> |
||||||
|
<div class="text"> |
||||||
|
Платформа разработана для проектировщиков дизайнеров и технических заказчиков |
||||||
|
</div> |
||||||
|
</li> |
||||||
|
</ul> |
||||||
|
</p> |
||||||
|
<a class="create" href="{% url 'work_sell:create' %}">Добавить проект</a> |
||||||
</div> |
</div> |
||||||
|
|
||||||
</div> |
</div> |
||||||
</div> |
</div> |
||||||
|
|
||||||
<div class="container-fluid"> |
|
||||||
<div class="row"> |
<div class="row"> |
||||||
<a class="popup-youtube" href="{{ main_settings.video_code }}"> |
<div class="col-lg-12"> |
||||||
<div class="youtube"></div> |
<a class="popup-youtube youtube" href="{{ main_settings.video_code }}"> |
||||||
</a> |
</a> |
||||||
|
</div> |
||||||
{# <!-- Modal HTML -->#} |
</div> |
||||||
{# <div id="myModal" class="modal fade">#} |
</div> |
||||||
{# <div class="modal-dialog">#} |
</div> |
||||||
{# <div class="modal-content">#} |
{% include 'partials/footer.html' %} |
||||||
{# <div class="modal-header">#} |
|
||||||
{# <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>#} |
|
||||||
{# <h4 class="modal-title">Видео</h4>#} |
|
||||||
{# </div>#} |
|
||||||
{# <div class="modal-body">#} |
|
||||||
{# <div id="modal-body-video">#} |
|
||||||
{# {{ main_settings.video_code | safe }}#} |
|
||||||
{# </div>#} |
|
||||||
{# </div>#} |
|
||||||
{# </div>#} |
|
||||||
{# </div>#} |
|
||||||
{# </div>#} |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</section> |
|
||||||
{% endblock %} |
{% endblock %} |
||||||
|
|
||||||
|
{% block old_js %} |
||||||
|
<script src='{% static "js/bootstrap.min.js" %}'></script> |
||||||
|
{% endblock %} |
||||||
{% block js_block %} |
{% block js_block %} |
||||||
<script> |
<script src='{% static "js/jquery.magnific-popup.js" %}'></script> |
||||||
$(document).ready(function() { |
<script src='{% static "js/build/home_page.js" %}'></script> |
||||||
$('.popup-youtube').magnificPopup({ |
|
||||||
disableOn: 700, |
|
||||||
type: 'iframe', |
|
||||||
mainClass: 'mfp-fade', |
|
||||||
removalDelay: 160, |
|
||||||
preloader: false, |
|
||||||
fixedContentPos: false |
|
||||||
}); |
|
||||||
}); |
|
||||||
|
|
||||||
{# $(document).ready(function(){#} |
|
||||||
{# var modalBodyVideo = $("#modal-body-video").clone(true);#} |
|
||||||
{# #} |
|
||||||
{# $("#myModal").on('hide.bs.modal', function(){#} |
|
||||||
{# $("#modal-body-video").remove();#} |
|
||||||
{# });#} |
|
||||||
{# #} |
|
||||||
{# $("#myModal").on('show.bs.modal', function(){#} |
|
||||||
{# $("#modal-body-video").remove();#} |
|
||||||
{# modalBodyVideo.appendTo('.modal-body');#} |
|
||||||
{# });#} |
|
||||||
{# });#} |
|
||||||
</script> |
|
||||||
{% endblock %} |
{% endblock %} |
||||||
|
|||||||
@ -0,0 +1,3 @@ |
|||||||
|
{{ form.captcha }} |
||||||
|
{{ user_form.captcha }} |
||||||
|
{{ form.captcha.errors }} |
||||||
@ -0,0 +1,61 @@ |
|||||||
|
{% load sass_tags %} |
||||||
|
<link rel='stylesheet' href='{% sass_src "partials/sass/registration.sass" %}'> |
||||||
|
<script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script> |
||||||
|
<div class="form-regestration"> |
||||||
|
<form method="post" id="form-registration">{% csrf_token %} |
||||||
|
{{ form.non_field_errors }} |
||||||
|
|
||||||
|
{% if not hide_user_type %} |
||||||
|
<div class="col-lg-12 select-reg polsF1"> |
||||||
|
{{ form.user_type }} |
||||||
|
{{ form.user_type.errors }} |
||||||
|
</div> |
||||||
|
{% endif %} |
||||||
|
|
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<input type="text" name="username" value="{{ form.username.value }}" |
||||||
|
class="box-sizing email-reg" |
||||||
|
placeholder="Nickname"> |
||||||
|
{{ form.username.errors }} |
||||||
|
</div> |
||||||
|
<div class="col-lg-12 select-reg "> |
||||||
|
<input type="text" name="email" class="box-sizing email-reg" |
||||||
|
value="{{ form.email.value }}" placeholder="Электронная почта"> |
||||||
|
{{ form.email.errors }} |
||||||
|
</div> |
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<input type="password" name="password1" class="box-sizing pass-reg" |
||||||
|
placeholder="Пароль"> |
||||||
|
{{ form.password1.errors }} |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<input type="password" name="password2" class="box-sizing pass-reg" |
||||||
|
placeholder="Пароль"> |
||||||
|
{{ form.password2.errors }} |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="col-lg-12 select-reg captcha"> |
||||||
|
{% include 'partials/inc-captcha.html' %} |
||||||
|
</div> |
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<button class="reg-sub">Зарегистрироваться</button> |
||||||
|
</div> |
||||||
|
<div class="clearfix"></div> |
||||||
|
|
||||||
|
{% include 'registration/social.html' %} |
||||||
|
|
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<div class="check-reg"> |
||||||
|
<label><input type="checkbox" name="tos" {{ form.tos.value }} /><span></span></label> |
||||||
|
<p>Регистрируясь, я подтверждаю свое согласие у условиями <a href="#">пользовательского соглашения</a> |
||||||
|
</p> |
||||||
|
{{ form.tos.errors }} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</form> |
||||||
|
<div class="col-lg-12 select-reg"> |
||||||
|
<a href="{% url 'auth_login' %}" class="have-ac">Я уже зарегистрирован на ресурсе</a> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
@ -0,0 +1,19 @@ |
|||||||
|
<div class="modal fade" id="registrationFormModal" tabindex="-2"> |
||||||
|
<div class="modal-dialog" role="document"> |
||||||
|
<div class="modal-content"> |
||||||
|
<div class="modal-header"> |
||||||
|
<button type="button" class="close" data-dismiss="modal"><span>×</span></button> |
||||||
|
<h4 class="modal-title">Регистрация</h4> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="modal-body"> |
||||||
|
{% include 'partials/inc-registration_form.html' %} |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="modal-footer"> |
||||||
|
<button type="button" class="btn btn-default" data-dismiss="modal">Отмена</button> |
||||||
|
{# <button type="button" class="btn btn-primary -action-button">Предложить</button>#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
@ -0,0 +1,160 @@ |
|||||||
|
@import "base/variavles" |
||||||
|
@import "base/fonts" |
||||||
|
|
||||||
|
.home |
||||||
|
background: |
||||||
|
image: url("#{$static}/img/main.png") |
||||||
|
repeat: no-repeat |
||||||
|
position: center |
||||||
|
size: cover |
||||||
|
|
||||||
|
.icons |
||||||
|
display: inline-block |
||||||
|
width: 24px |
||||||
|
height: 24px |
||||||
|
background: |
||||||
|
image: url("#{$static}/img/sprite.png") |
||||||
|
repeat: no-repeat |
||||||
|
|
||||||
|
.infoBlock |
||||||
|
//padding: 113px 0 0 0 |
||||||
|
height: 100% |
||||||
|
text-align: center |
||||||
|
padding: 80px 0 40px |
||||||
|
ul |
||||||
|
&.customer-list, |
||||||
|
&.contractor-list |
||||||
|
text-align: left |
||||||
|
padding-left: 60px |
||||||
|
padding-right: 20px |
||||||
|
li |
||||||
|
display: flex |
||||||
|
align-items: center |
||||||
|
padding-top: 10px |
||||||
|
list-style: none |
||||||
|
font-size: 12px |
||||||
|
.text |
||||||
|
padding-left: 10px |
||||||
|
display: inline-block |
||||||
|
.icon |
||||||
|
&-1 |
||||||
|
@extend .icons |
||||||
|
width: 40px |
||||||
|
background-position: 0 0 |
||||||
|
&-2 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -24px |
||||||
|
&-3 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -48px |
||||||
|
&-4 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -72px |
||||||
|
&-5 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -96px |
||||||
|
&-6 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -120px |
||||||
|
&-7 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -144px |
||||||
|
&-8 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -168px |
||||||
|
&-9 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -192px |
||||||
|
&-10 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -216px |
||||||
|
&-11 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -240px |
||||||
|
&-12 |
||||||
|
@extend .icons |
||||||
|
background-position: 0 -264px |
||||||
|
|
||||||
|
&.customer-list |
||||||
|
li |
||||||
|
color: #c7c5c5 |
||||||
|
&.contractor-list |
||||||
|
li |
||||||
|
color: #353434 |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
a |
||||||
|
text-decoration: none |
||||||
|
border: none |
||||||
|
cursor: pointer |
||||||
|
& > a.to-profile |
||||||
|
height: 40px |
||||||
|
border-radius: 40px |
||||||
|
font-size: 20px |
||||||
|
text-transform: uppercase |
||||||
|
font-family: 'pfdintextcomppro-regular', sans-serif |
||||||
|
letter-spacing: 4px |
||||||
|
position: relative |
||||||
|
display: table |
||||||
|
margin: 0 auto |
||||||
|
a.create |
||||||
|
font-family: Myriad, sans-serif |
||||||
|
font-weight: normal |
||||||
|
font-size: 18pt |
||||||
|
display: inline-block |
||||||
|
margin-top: 40px |
||||||
|
text-transform: uppercase |
||||||
|
&.customer |
||||||
|
background-color: rgba(0, 0, 0, 0.7) |
||||||
|
p, a.create |
||||||
|
color: #c7c5c5 |
||||||
|
&:hover |
||||||
|
color: #f3f1f1 |
||||||
|
& > a.to-profile |
||||||
|
&:link, &:visited |
||||||
|
background: url('#{$static}/img/button2.png') no-repeat 27px, white |
||||||
|
color: black |
||||||
|
padding: 24px 26px 20px 72px |
||||||
|
&:hover |
||||||
|
box-shadow: 0 0 15px rgba(255, 255, 255, 0.8) |
||||||
|
-webkit-transform: scale(1.04) |
||||||
|
-moz-transform: scale(1.04) |
||||||
|
transform: scale(1.04) |
||||||
|
&.contractor |
||||||
|
background-color: rgba(255, 0, 6, 0.7) |
||||||
|
p, a.create |
||||||
|
color: #353434 |
||||||
|
&:hover |
||||||
|
color: #141313 |
||||||
|
& > a.to-profile |
||||||
|
&:link, &:visited |
||||||
|
background: url('#{$static}/img/button1.png') no-repeat 25px, black |
||||||
|
color: white |
||||||
|
padding: 24px 26px 20px 72px |
||||||
|
&:hover |
||||||
|
box-shadow: 0 0 15px rgba(0, 0, 0, 0.8) |
||||||
|
-webkit-transform: scale(1.04) |
||||||
|
-moz-transform: scale(1.04) |
||||||
|
transform: scale(1.04) |
||||||
|
|
||||||
|
.youtube |
||||||
|
display: block |
||||||
|
border-radius: 50% |
||||||
|
width: 80px |
||||||
|
height: 80px |
||||||
|
margin: 20px auto 40px |
||||||
|
//border-radius: 100% |
||||||
|
cursor: pointer |
||||||
|
background: |
||||||
|
image: url('#{$static}/img/youtube.png') |
||||||
|
repeat: no-repeat |
||||||
|
position: center |
||||||
|
size: cover |
||||||
|
&:hover |
||||||
|
box-shadow: 0 0 15px rgba(255, 19, 19, 0.8) |
||||||
|
-webkit-transform: scale(1.04) |
||||||
|
-moz-transform: scale(1.04) |
||||||
|
transform: scale(1.04) |
||||||
|
&:focus |
||||||
|
outline: none |
||||||
@ -0,0 +1,119 @@ |
|||||||
|
@import "base/variavles" |
||||||
|
|
||||||
|
.form-regestration |
||||||
|
display: table |
||||||
|
width: 100% |
||||||
|
float: left |
||||||
|
margin: 0 0 80px 0 |
||||||
|
padding: 67px 0 |
||||||
|
//padding: 20px 0 67px 0 |
||||||
|
background-color: #ddd |
||||||
|
text-align: center |
||||||
|
a, a:hover |
||||||
|
text-decoration: none |
||||||
|
a:hover |
||||||
|
color: #6f7bff |
||||||
|
|
||||||
|
.select-reg |
||||||
|
.btn-group |
||||||
|
display: inline-block |
||||||
|
vertical-align: top |
||||||
|
&.captcha |
||||||
|
text-align: center |
||||||
|
.g-recaptcha |
||||||
|
display: inline-table |
||||||
|
margin: 25px 0 0 0 |
||||||
|
input[type="checkbox"] + span |
||||||
|
position: absolute |
||||||
|
left: 0 |
||||||
|
top: 0 |
||||||
|
width: 100% |
||||||
|
height: 100% |
||||||
|
background: |
||||||
|
image: url('#{$static}/img/check.png') |
||||||
|
repeat: no-repeat |
||||||
|
position: 0 0 |
||||||
|
size: cover |
||||||
|
cursor: pointer |
||||||
|
label |
||||||
|
width: 23px |
||||||
|
height: 23px |
||||||
|
display: block |
||||||
|
position: relative |
||||||
|
margin-right: 10px |
||||||
|
|
||||||
|
input[type="checkbox"]:checked + span |
||||||
|
background-position: 0 -23px |
||||||
|
|
||||||
|
.email-reg, .pass-reg |
||||||
|
width: 360px |
||||||
|
height: 51px |
||||||
|
display: inline-block |
||||||
|
vertical-align: top |
||||||
|
padding: 0 15px |
||||||
|
font-size: 15px |
||||||
|
background-color: white |
||||||
|
color: black |
||||||
|
margin: 20px 0 0 0 |
||||||
|
font-family: 'Arial-MT-Regular', sans-serif |
||||||
|
border: none !important |
||||||
|
|
||||||
|
.reg-sub |
||||||
|
width: 360px |
||||||
|
height: 51px |
||||||
|
color: white |
||||||
|
text-align: center |
||||||
|
font-family: 'pfdintextcomppro-regular', sans-serif |
||||||
|
letter-spacing: 2px |
||||||
|
line-height: 51px |
||||||
|
border: none |
||||||
|
background-color: #42B476 |
||||||
|
border-radius: 40px |
||||||
|
display: inline-block |
||||||
|
vertical-align: top |
||||||
|
margin-top: 20px |
||||||
|
font-size: 15px |
||||||
|
text-transform: uppercase |
||||||
|
&:active, &:focus |
||||||
|
outline: none !important |
||||||
|
|
||||||
|
.check-reg |
||||||
|
width: 360px |
||||||
|
display: inline-block |
||||||
|
vertical-align: top |
||||||
|
margin-top: 20px |
||||||
|
label |
||||||
|
float: left |
||||||
|
p |
||||||
|
font-family: 'Arial-MT-Regular', sans-serif |
||||||
|
color: #6c6c6c |
||||||
|
font-size: 15px |
||||||
|
float: left |
||||||
|
/*margin: -2px 0 0 10px; |
||||||
|
line-height: 18px |
||||||
|
width: 90% |
||||||
|
text-align: left |
||||||
|
> a |
||||||
|
color: #009DD9 |
||||||
|
&:link, &:visited |
||||||
|
color: #009DD9 |
||||||
|
&:hover |
||||||
|
color: #6f7bff |
||||||
|
|
||||||
|
.have-ac, .have-ac:link, .have-ac:visited |
||||||
|
color: #009DD9 |
||||||
|
font-size: 17px |
||||||
|
font-family: 'Arial-MT-Regular', sans-serif |
||||||
|
text-transform: uppercase |
||||||
|
display: inline-block |
||||||
|
|
||||||
|
.form-regestration |
||||||
|
.errorlist |
||||||
|
color: red |
||||||
|
//width: 360px |
||||||
|
//margin: 0 auto |
||||||
|
//text-align: left |
||||||
|
font-family: 'Arial-MT-Regular', sans-serif |
||||||
|
font-size: 15px |
||||||
|
li |
||||||
|
list-style: none |
||||||
@ -0,0 +1,100 @@ |
|||||||
|
{% extends 'partials/base.html' %} |
||||||
|
|
||||||
|
{% block content %} |
||||||
|
<section class="mainContainer"> |
||||||
|
{% include 'partials/header.html' %} |
||||||
|
|
||||||
|
<div class="container-fluid"> |
||||||
|
<div class="row"> |
||||||
|
<p class="welcomeMain">{{ main_settings.heading }}</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="container-fluid"> |
||||||
|
<div class="row"> |
||||||
|
<div class="col-lg-6"> |
||||||
|
<div class="changeBlock changeBlock2"> |
||||||
|
{% if request.user.is_authenticated and request.user.is_customer %} |
||||||
|
<a href="{% url 'users:customer-profile-open-projects' pk=request.user.pk %}">Я заказчик</a> |
||||||
|
{% else %} |
||||||
|
<a href="{% url 'registration_register' %}?type=customer">Я заказчик</a> |
||||||
|
{% endif %} |
||||||
|
<p> |
||||||
|
{{ main_settings.customer_text|safe }} |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
<div class="square"> |
||||||
|
<div class="insetSquare"></div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="col-lg-6"> |
||||||
|
<div class="changeBlock changeBlock1"> |
||||||
|
{% if request.user.is_authenticated and request.user.is_contractor %} |
||||||
|
<a href="{% url 'users:contractor-profile' pk=request.user.pk %}">Я исполнитель</a> |
||||||
|
{% else %} |
||||||
|
<a href="{% url 'registration_register' %}?type=contractor">Я исполнитель</a> |
||||||
|
{% endif %} |
||||||
|
<p> |
||||||
|
{{ main_settings.contractor_text|safe }} |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="container-fluid"> |
||||||
|
<div class="row"> |
||||||
|
<a class="popup-youtube" href="{{ main_settings.video_code }}"> |
||||||
|
<div class="youtube"></div> |
||||||
|
</a> |
||||||
|
|
||||||
|
{# <!-- Modal HTML -->#} |
||||||
|
{# <div id="myModal" class="modal fade">#} |
||||||
|
{# <div class="modal-dialog">#} |
||||||
|
{# <div class="modal-content">#} |
||||||
|
{# <div class="modal-header">#} |
||||||
|
{# <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>#} |
||||||
|
{# <h4 class="modal-title">Видео</h4>#} |
||||||
|
{# </div>#} |
||||||
|
{# <div class="modal-body">#} |
||||||
|
{# <div id="modal-body-video">#} |
||||||
|
{# {{ main_settings.video_code | safe }}#} |
||||||
|
{# </div>#} |
||||||
|
{# </div>#} |
||||||
|
{# </div>#} |
||||||
|
{# </div>#} |
||||||
|
{# </div>#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</section> |
||||||
|
{% endblock %} |
||||||
|
|
||||||
|
{% block js_block %} |
||||||
|
<script> |
||||||
|
$(document).ready(function() { |
||||||
|
$('.popup-youtube').magnificPopup({ |
||||||
|
disableOn: 700, |
||||||
|
type: 'iframe', |
||||||
|
mainClass: 'mfp-fade', |
||||||
|
removalDelay: 160, |
||||||
|
preloader: false, |
||||||
|
fixedContentPos: false |
||||||
|
}); |
||||||
|
}); |
||||||
|
|
||||||
|
{# $(document).ready(function(){#} |
||||||
|
{# var modalBodyVideo = $("#modal-body-video").clone(true);#} |
||||||
|
{# #} |
||||||
|
{# $("#myModal").on('hide.bs.modal', function(){#} |
||||||
|
{# $("#modal-body-video").remove();#} |
||||||
|
{# });#} |
||||||
|
{# #} |
||||||
|
{# $("#myModal").on('show.bs.modal', function(){#} |
||||||
|
{# $("#modal-body-video").remove();#} |
||||||
|
{# modalBodyVideo.appendTo('.modal-body');#} |
||||||
|
{# });#} |
||||||
|
{# });#} |
||||||
|
</script> |
||||||
|
{% endblock %} |
||||||
Loading…
Reference in new issue