Commit f0633188 authored by Олег Гиммельшпах's avatar Олег Гиммельшпах

Merge branch 'master' of git.task-on.com:ktask/taskoncom

# Conflicts:
#	frontend/config/main.php
parents 7dee1b4c 04a37106
......@@ -20,10 +20,10 @@ class BidController extends \common\components\BaseController
public static function actionsTitles()
{
return [
'Add' => 'Добавление заявки',
'Blogadd' => 'Добавление заявки в блог',
'Upload-files' => 'Загрузка файлов',
'Delete-file' => 'Удаление файлов',
'Add' => 'Добавление заявки',
'Blogadd' => 'Добавление заявки в блог',
'Upload-files' => 'Загрузка файлов',
'Delete-file' => 'Удаление файлов',
];
}
......@@ -37,7 +37,7 @@ class BidController extends \common\components\BaseController
$model = new Bid;
$model->scenario = Yii::$app->request->post('scenario');
if(Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
$transaction = Yii::$app->db->beginTransaction();
try {
if ($model->save()) {
......@@ -80,7 +80,7 @@ class BidController extends \common\components\BaseController
$model = new Bid;
$model->blog = true;
$model->scenario = Yii::$app->request->post('scenario');
if(Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
$transaction = Yii::$app->db->beginTransaction();
try {
if ($model->save()) {
......@@ -110,27 +110,15 @@ class BidController extends \common\components\BaseController
}
}
public function actionUploadFiles()
{
if(Yii::$app->request->isAjax) {
if (Yii::$app->request->isAjax) {
Yii::$app->response->format = Response::FORMAT_JSON;
$model = new BidFile;
$model->file = UploadedFile::getInstanceByName('file');
if ($model->file) {
if (!file_exists(BidFile::path())) {
mkdir(BidFile::path(), 0777, true);
}
$model->filename = date('dmYHis-') . uniqid() . '.' . $model->file->extension;
$model->file->saveAs(BidFile::path() . $model->filename);
return [
'filename' => $model->filename
];
}
$fileNames = BidFile::uploadFiles();
return [
'files' => $fileNames
];
} else {
throw new NotFoundHttpException('The requested page does not exist.');
}
......@@ -138,7 +126,7 @@ class BidController extends \common\components\BaseController
public function actionDeleteFile()
{
if(Yii::$app->request->isAjax) {
if (Yii::$app->request->isAjax) {
Yii::$app->response->format = Response::FORMAT_JSON;
$filename = Yii::$app->request->post('filename');
......
......@@ -26,6 +26,7 @@ class Bid extends \common\components\ActiveRecordModel
const SCENARIO_SUBSCRIBE = 'subscribe';
const SCENARIO_BUSINESS = 'business';
const SCENARIO_DOCUMENTATION = 'documentation';
const SCENARIO_TASKON_SOURCES = 'taskon_sources';
const FORM_SUBSCRIBE = 'subscribe';
const FORM_CALLBACK = 'callback';
......@@ -33,6 +34,8 @@ class Bid extends \common\components\ActiveRecordModel
const FORM_MESSAGE = 'message';
const FORM_BUSINESS = 'business';
const FORM_DOCUMENTATION = 'documentation';
const FORM_YANDEX_CLOUD = 'yandex_cloud';
const FORM_TASKON_SOURCES = 'taskon_sources';
const TAG_INVOLVEMENT = 'Вовлечение';
const TAG_TREATMENT = 'Обращение';
......@@ -43,7 +46,9 @@ class Bid extends \common\components\ActiveRecordModel
// self::FORM_SUBSCRIBE => 'Подписка',
self::FORM_MESSAGE => 'Сообщение с сайта',
self::FORM_BUSINESS => 'Расчет для бизнес решения',
self::FORM_DOCUMENTATION => 'Заявка на Taskon'
self::FORM_DOCUMENTATION => 'Заявка на Taskon',
self::FORM_YANDEX_CLOUD => 'Запрос на подключение к Яндекс.Облако',
self::FORM_TASKON_SOURCES => 'Запрос на подключения к TaskOn'
];
public static $tag_titles = [
......@@ -88,6 +93,8 @@ class Bid extends \common\components\ActiveRecordModel
[['name', 'message', 'text','email'], 'required', 'on' => self::SCENARIO_DOCUMENTATION],
[['name', 'email'], 'required', 'on' => self::SCENARIO_TASKON_SOURCES],
[['phone'], 'required', 'on' => self::SCENARIO_BUSINESS],
[['email'], 'required', 'on' => self::SCENARIO_SUBSCRIBE],
......@@ -101,6 +108,7 @@ class Bid extends \common\components\ActiveRecordModel
[['email'], 'string', 'max' => 70],
[['form'], 'string', 'max' => 50],
[['file'], 'safe'],
[['confirm'], 'required'],
];
}
......
......@@ -3,6 +3,8 @@
namespace common\modules\bids\models;
use Yii;
use yii\helpers\FileHelper;
use yii\web\UploadedFile;
/**
* This is the model class for table "bids_files".
......@@ -86,6 +88,27 @@ class BidFile extends \common\components\ActiveRecordModel
public static function path()
{
return Yii::getAlias('@backend') . self::FILE_FOLDER;
return Yii::getAlias('@backend' . self::FILE_FOLDER);
}
/**
* @return array
*/
public static function uploadFiles()
{
$files = UploadedFile::getInstancesByName('file');
$fileNames = [];
if ($files) {
$path = BidFile::path();
if (!is_dir($path)) {
FileHelper::createDirectory(BidFile::path(), 0777, true);
}
foreach ($files as $file) {
$fileName = Yii::$app->security->generateRandomString() . ".$file->extension";
$fileNames[] = $fileName;
$file->saveAs($path . $fileName);
}
}
return $fileNames;
}
}
......@@ -8,7 +8,8 @@ use common\modules\bids\models\Bid;
?>
<div class="hidden">
<div id="article" class="popup popup_2 blog_form">
<div id="article" class="popup popup_2 blog_form popup_custom">
<div class="txtbtnclose"><?=\Yii::t('blog', 'Close')?></div>
<span class="popup__title"><?=\Yii::t('blog', 'Suggest an article for the blog')?></span>
......@@ -71,7 +72,7 @@ use common\modules\bids\models\Bid;
<div class="clear"></div>
<?php echo Html::submitButton(\Yii::t('blog', 'Submit'), ['class' => 'save-button btn-default button-lg']); ?>
<?php echo Html::submitButton(\Yii::t('blog', 'Submit'), ['class' => 'save-button btn-default button-lg btn-custom']); ?>
</div>
......@@ -80,7 +81,7 @@ use common\modules\bids\models\Bid;
</div>
<div id="feedback" class="popup popup_2 blog_form_2">
<div id="feedback" class="popup popup_2 blog_form_2 popup_custom">
<div class="txtbtnclose"><?=\Yii::t('blog', 'Close')?></div>
<span class="popup__title"><?=\Yii::t('blog', 'Offer a subject')?></span>
<p><strong><?=\Yii::t('blog', "We are ready to share our experience, let us know what a topic you're interested in.")?></strong></p>
......@@ -139,7 +140,7 @@ For example: write about CRM"),
<div class="clear"></div>
<?php echo Html::submitButton(\Yii::t('blog', ' Submit '), ['class' => 'save-button btn-default button-lg']); ?>
<?php echo Html::submitButton(\Yii::t('blog', ' Submit '), ['class' => 'save-button btn-default button-lg btn-custom']); ?>
</div>
......
......@@ -2,16 +2,13 @@
namespace common\modules\content\models;
use common\models\MetaTags;
use common\modules\languages\models\Languages;
use common\modules\messageTemplate\models\MessageTemplate;
use frontend\modules\sitemap\behaviors\SitemapBehavior;
use Yii;
use yii\behaviors\TimestampBehavior;
use frontend\modules\sitemap\behaviors\SitemapBehavior;
use \yii\helpers\Url;
use common\modules\content\models\CoBlocks;
use common\modules\content\models\CoContentLang;
use common\modules\languages\models\Languages;
use common\models\MetaTags;
use yii\helpers\Url;
/**
* This is the model class for table "co_content".
......@@ -115,9 +112,10 @@ class CoContent extends \common\components\ActiveRecordModel
/**
* @inheritdoc
*/
public function name() {
return 'Контент';
}
public function name()
{
return 'Контент';
}
/**
* @inheritdoc
......@@ -163,12 +161,11 @@ class CoContent extends \common\components\ActiveRecordModel
/**
* @return \yii\db\ActiveQuery
*/
public function getMetaTags($lang_id = null)
public function getMetaTags($lang_id = null)
{
$query = $this->hasMany(MetaTags::className(), ['object_id' => 'id'])->where(['model_id' => get_class($this)]);
$query = $this->hasMany(MetaTags::className(), ['object_id' => 'id'])->where(['model_id' => get_class($this)]);
if($lang_id)
{
if ($lang_id) {
$query->andWhere(['lang_id' => $lang_id]);
}
......@@ -178,12 +175,12 @@ class CoContent extends \common\components\ActiveRecordModel
/**
* @return \yii\db\ActiveQuery
*/
public function getMetaTag($lang_id = null)
public function getMetaTag($lang_id = null)
{
$lang_id = ($lang_id === null)? Languages::getCurrent()->id: $lang_id;
$lang_id = ($lang_id === null) ? Languages::getCurrent()->id : $lang_id;
return $this->hasOne(MetaTags::className(), ['object_id' => 'id'])->where([
'model_id' => get_class($this),
'model_id' => get_class($this),
'lang_id' => $lang_id
]);
}
......@@ -199,13 +196,14 @@ class CoContent extends \common\components\ActiveRecordModel
/**
* @return \yii\db\ActiveQuery
*/
public function getTemplate() {
public function getTemplate()
{
return $this->hasOne(MessageTemplate::className(), ['id' => 'template_id']);
}
public function getLang($lang_id = null)
{
$lang_id = ($lang_id === null)? Languages::getCurrent()->id: $lang_id;
$lang_id = ($lang_id === null) ? Languages::getCurrent()->id : $lang_id;
return $this->hasOne(CoContentLang::className(), ['content_id' => 'id'])->where('lang_id = :lang_id', [':lang_id' => $lang_id]);
}
......@@ -218,7 +216,7 @@ class CoContent extends \common\components\ActiveRecordModel
public function afterSave($insert, $changedAttributes)
{
parent::afterSave($insert, $changedAttributes);
if ($this->category_id==4) { // <<< С этим надо что то делать, очень много привязок динамичных данных
if ($this->category_id == 4) { // <<< С этим надо что то делать, очень много привязок динамичных данных
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, Yii::$app->urlManager->createAbsoluteUrl('/triggers/default/recheckcases'));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
......@@ -230,13 +228,10 @@ class CoContent extends \common\components\ActiveRecordModel
public function beforeSave($insert)
{
if (parent::beforeSave($insert))
{
if (parent::beforeSave($insert)) {
$this->priority = str_replace(',', '.', $this->priority);
return true;
}
else
{
} else {
return false;
}
}
......
......@@ -134,6 +134,8 @@ class CoContentLang extends \common\components\ActiveRecordModel
}
}
$arrWhatReplaceNext[] = '[yandex-form]';
$arrReplaceNext[] = CoBlocks::printStaticBlock('yandex-form');
$arrWhatReplaceNext[] = '[about-reviews]';
$arrReplaceNext[] = CoBlocks::printStaticBlock('about-reviews');
$arrWhatReplaceNext[] = '[reviews]';
......
......@@ -17,4 +17,5 @@ use common\modules\content\models\CoContent;
</section>
<?=$this->render('@app/views/layouts/footer')?>
<?php endif; ?>
\ No newline at end of file
<?php endif; ?>
......@@ -129,7 +129,7 @@ $this->registerMetaTag(['property' => 'og:site_name', 'content' => 'Арт Пр
<!-- Off-Canvas Wrapper-->
<div class="offcanvas-wrapper" id="box1">
<!-- Page Content-->
<div class="container padding-bottom-3x mb-2">
<div class="container mb-2">
<div class="row">
<!-- Content-->
<div class="col-xl-9 col-lg-8 order-lg-2">
......@@ -229,5 +229,4 @@ $this->registerMetaTag(['property' => 'og:site_name', 'content' => 'Арт Пр
</div>
</div>
</div>
<?php echo $this->render('@app/views/layouts/footer') ?>
<?php echo $this->render('_request_access') ?>
\ No newline at end of file
<?php echo $this->render('@app/views/layouts/footer') ?>
\ No newline at end of file
......@@ -66,7 +66,20 @@ use common\modules\bids\models\Bid;
'placeholder' => \Yii::t('blog', 'Describe briefly for which tasks you want to use the TaskOn platform? *'),
'class' => 'sect_cont_form__textarea'
])->label(false);
?>
?>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<div class="clear"></div>
......
......@@ -78,5 +78,4 @@ GeneratorAsset::register($this);
</div>
</div>
</div>
<?php echo $this->render('@app/views/layouts/footer'); ?>
<?php echo $this->render('_request_access') ?>
\ No newline at end of file
<?php echo $this->render('@app/views/layouts/footer'); ?>
\ No newline at end of file
<?php
use yii\db\Migration;
/**
* Class m190625_070337_add_confirm_column_to_bids
*/
class m190625_070337_add_confirm_column_to_bids extends Migration
{
/**
* {@inheritdoc}
*/
public function safeUp()
{
$this->addColumn('bids', 'confirm', $this->boolean()->notNull()->defaultValue(false)->after('text'));
}
/**
* {@inheritdoc}
*/
public function safeDown()
{
$this->dropColumn('bids', 'confirm');
}
}
......@@ -7,6 +7,7 @@ return [
'Your number' => 'Ваш телефон',
'Submit' => 'Заказать звонок',
'Close' => 'Закрыть',
'Close' => 'Закрыть',
'Your request has been send. We will call you' => 'Ваша заявка отправлена, мы вам перезвоним',
'Posting a project on Yandex.Cloud' => 'Размещение проекта на Яндекс.Облако',
'Please fill your number so we can ask clarifying questions' => 'Оставьте свой номер телефона, чтобы мы смогли задать уточняющие вопросы',
];
\ No newline at end of file
......@@ -18,6 +18,10 @@ return [
'Subscribe' => 'Подписаться',
'Write here summary of your article or send a short offer.' => 'Напишите краткие тезисы статьи или опишите интересующий вопрос.',
'You have successfully subscribed to the update notification.' => 'Вы успешно подписались на уведомление об обновлениях.',
'I agree to' => 'Я согласен с',
'the terms of using personal data' => 'условиями обработки персональных данных',
'Please enter your name.' => 'Пожалуйста, укажите своё имя:',
'Thank you very much for showing interest!' => 'Нам очень приятно, что вы проявили интерес!'
'Thank you very much for showing interest!' => 'Нам очень приятно, что вы проявили интерес!',
'Accept the terms' => 'Примите условие обработки персональных данных',
'Please wait, file is loading...' => 'Подождите, осуществляется загрузка файла...'
];
\ No newline at end of file
......@@ -2,5 +2,5 @@
return [
'Have a project or idea - send us' => 'Рассчитать проект',
'We are ready to talk about any idea or can prepare an offer for your project' => 'Готовы обсудить любой проект. Есть идея или готовое ТЗ по проекту - отправьте его нам!',
'Submit' => 'Рассчитать проект',
'Submit' => 'Отправить',
];
\ No newline at end of file
......@@ -7,10 +7,9 @@ use yii\widgets\ActiveForm;
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<div class="calk_form">
<div class="calk_form calk_form_custom">
<span class="calk_form__title">Отправить запрос</span>
<?php
$model = new Bid;
$model->scenario = Bid::SCENARIO_BUSINESS;
......@@ -70,6 +69,19 @@ use yii\widgets\ActiveForm;
'class' => 'footer_form__input'
]); ?>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm-index',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<div class="business-case-comment">
<?php echo $form->field($model, 'text')->textArea([
'placeholder' => 'Комментарий',
......@@ -78,7 +90,7 @@ use yii\widgets\ActiveForm;
])->label(false); ?>
</div>
<?php echo Html::submitButton('Узнать стоимость', ['class' => 'btn-default save-button']); ?>
<?php echo Html::submitButton('Узнать стоимость', ['class' => 'btn-default save-button business-case-btn']); ?>
</div>
......
......@@ -6,7 +6,7 @@ use common\modules\bids\models\Bid;
?>
<div class="hidden">
<div id="zvonok_form" class="popup">
<div id="zvonok_form" class="popup popup_custom">
<div class="txtbtnclose"><?= Yii::t('footer', 'Close') ?></div>
<span class="popup__title"><?= Yii::t('footer', 'Сall request') ?></span>
<span class="popup__subtittle"><?= Yii::t('footer', 'Please fill your number and we will call you') ?>:</span>
......@@ -17,12 +17,13 @@ use common\modules\bids\models\Bid;
$model->form = Bid::FORM_CALLBACK;
$form = ActiveForm::begin([
'id' => 'callback_form',
'action' => '/bids/bid/add',
'enableClientValidation' => false,
'options' => [
'class' => 'valid_form bids-form',
'data-title' => Yii::t('footer', 'Сall request'),
'data-form' => Yii::t('footer', 'Сall request'),
'data-title' => Yii::t('footer', 'Сall request'),
'data-form' => Yii::t('footer', 'Сall request'),
'data-tag' => Bid::TAG_TREATMENT
],
]); ?>
......@@ -36,7 +37,7 @@ use common\modules\bids\models\Bid;
<?php echo $form->field($model, 'form', ['template' => '{input}'])->hiddenInput(['class' => 'not_clear']); ?>
<?php echo $form->field($model, 'name', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>',
'template' => '<div class="row"><div class="col-sm-12">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => Yii::t('footer', 'Your name'),
......@@ -44,13 +45,26 @@ use common\modules\bids\models\Bid;
])->label(false); ?>
<?php echo $form->field($model, 'phone', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>',
'template' => '<div class="row"><div class="col-sm-12">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => Yii::t('footer', 'Your number'),
'class' => 'input_st'
])->label(false); ?>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<?php echo Html::submitButton(Yii::t('footer', 'Submit'), ['class' => 'save-button popup_bt_send']); ?>
</div>
......
<?php
use yii\widgets\ActiveForm;
use yii\helpers\Html;
use common\modules\bids\models\Bid;
?>
<div class="hidden">
<div id="zvonok_form_yandex" class="popup popup_custom">
<div class="txtbtnclose"><?= Yii::t('footer', 'Close') ?></div>
<span class="popup__title"><?= Yii::t('footer', 'Posting a project on Yandex.Cloud') ?></span>
<span class="popup__subtittle"><?= Yii::t('footer', 'Please fill your number so we can ask clarifying questions') ?>:</span>
<?php
$model = new Bid;
$model->scenario = Bid::SCENARIO_CALLBACK;
$model->form = Bid::FORM_YANDEX_CLOUD;
$form = ActiveForm::begin([
'id' => 'yandex_callback_form',
'action' => '/bids/bid/add',
'enableClientValidation' => false,
'options' => [
'class' => 'valid_form bids-form',
'data-title' => Yii::t('footer', 'Сall request'),
'data-form' => Yii::t('footer', 'Сall request'),
'data-tag' => Bid::TAG_TREATMENT
],
]); ?>
<div class="message-box callback send_secce"><?= Yii::t('footer', 'Your request has been send. We will call you') ?>.</div>
<div class="content">
<?php echo Html::hiddenInput('scenario', $model->scenario, ['class' => 'not_clear']); ?>
<?php echo $form->field($model, 'form', ['template' => '{input}'])->hiddenInput(['class' => 'not_clear']); ?>
<?php echo $form->field($model, 'name', [
'template' => '<div class="row"><div class="col-sm-12">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => Yii::t('footer', 'Your name'),
'class' => 'input_st'
])->label(false); ?>
<?php echo $form->field($model, 'phone', [
'template' => '<div class="row"><div class="col-sm-12">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => Yii::t('footer', 'Your number'),
'class' => 'input_st'
])->label(false); ?>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm-yandex',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . ' ' . Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<?php echo Html::submitButton(Yii::t('footer', 'Submit'), ['class' => 'save-button popup_bt_send']); ?>
</div>
<?php ActiveForm::end(); ?>
</div>
<?php //todo ?? ?>
<?php //echo \common\modules\users\widgets\LoginWidget::widget(); ?>
<?php //echo \common\modules\users\widgets\RegistrationWidget::widget(); ?>
</div>
\ No newline at end of file
......@@ -56,7 +56,7 @@ use yii\widgets\ActiveForm;
'placeholder' => \Yii::t('form', 'Telephone') . '*',
'class' => 'input_st'
]); ?>
<?php echo Html::submitButton('Демо доступ', ['class' => 'save-button popup_bt_send']); ?>
<?php echo Html::submitButton('Демо доступ', ['class' => 'save-button popup_bt_send demo-btn']); ?>
</div>
<?php ActiveForm::end(); ?>
</div>
\ No newline at end of file
<?php
use yii\widgets\ActiveForm;
use yii\helpers\Html;
use common\modules\bids\models\Bid;
?>
<div id="request_access" class="popup popup_2 blog_form_2 popup_custom">
<div class="txtbtnclose"><?= \Yii::t('blog', 'Close') ?></div>
<span class="popup__title"><?= \Yii::t('blog', 'Connection request') ?></span>
<p><strong><?= \Yii::t('blog',
'Access to the repository (the source code platform Task On 2) is sent on request.') ?></strong></p>
<?php
$model = new Bid();
$model->scenario = Bid::SCENARIO_DOCUMENTATION;
$model->form = Bid::FORM_DOCUMENTATION;
$form = ActiveForm::begin([
'action' => '/documentation/page/request-access',
'enableClientValidation' => false,
'options' => [
'class' => 'valid_form bids-form blog-form',
'data-title' => 'Заявка на подключения к TaskOn - {номер заявки}',
'data-form' => 'Заявка на подключения к TaskOn - {номер заявки}',
'data-tag' => Bid::TAG_TREATMENT
],
]);
?>
<div class="message-box send_secce"><?= \Yii::t('blog', 'Connection request sent. We will consider it.') ?></div>
<div class="content">
<?php echo $form->field($model, 'form', ['template' => '{input}'])->hiddenInput(['class' => 'not_clear']); ?>
<div class="blog_form_left50 form_resp">
<div>
<?php
echo $form->field($model, 'name')->textInput([
'placeholder' => \Yii::t('form', 'Your name') . '*',
'class' => 'input_st'
])->label(false);
?>
</div>
</div>
<div class="blog_form_right50 form_resp">
<?php
echo $form->field($model, 'email')->textInput([
'placeholder' => 'E-mail' . '*',
'class' => 'input_st'
])->label(false);
?>
</div>
<div class="clear"></div>
<?php
echo $form->field($model, 'message')->textArea([
'placeholder' => \Yii::t('blog', 'Describe briefly for which tasks you want to use the TaskOn platform? *'),
'class' => 'sect_cont_form__textarea'
])->label(false);
?>
<div class="clear"></div>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm-index',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<?php echo Html::submitButton(\Yii::t('blog', 'Request access'),
['class' => 'save-button popup_bt_send']); ?>
</div>
<?php ActiveForm::end(); ?>
</div>
\ No newline at end of file
......@@ -8,5 +8,4 @@ use common\models\Settings;
<?php $s = Settings::getValue('social-link-youtube'); if($s): ?><li><a href="<?=$s?>" class="soc_item"><i class="fa fa-youtube"></i></a></li><?php endif; ?>
<?php $s = Settings::getValue('social-link-instagram'); if($s): ?><li><a href="<?=$s?>" class="soc_item"><i class="fa fa-instagram"></i></a></li><?php endif; ?>
<?php $s = Settings::getValue('social-link-twitter'); if($s): ?><li><a href="<?=$s?>" class="soc_item"><i class="fa fa-twitter"></i></a></li><?php endif; ?>
<?php $s = Settings::getValue('social-link-google'); if($s): ?><li><a href="<?=$s?>" class="soc_item"><i class="gplusicon"></i></a></li><?php endif; ?>
</ul>
\ No newline at end of file
<?php
use common\modules\bids\models\Bid;
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/** @var \yii\web\View $this */
?>
<div class="popup popup_2 blog_form_2 popup_custom" id="sources_form">
<div class="txtbtnclose"><?= \Yii::t('blog', 'Close') ?></div>
<span class="popup__title">Запрос на исходники платформы TaskOn</span>
<p><strong>Для того, чтобы мы смогли Вам предоставить доступ расскажите немного о себе</strong>
</p>
<br>
<?php
$model = new Bid();
$model->scenario = Bid::SCENARIO_TASKON_SOURCES;
$model->form = Bid::FORM_TASKON_SOURCES;
$form = ActiveForm::begin([
'action' => '/bids/bid/add',
'enableClientValidation' => false,
'options' => [
'class' => 'valid_form bids-form',
'data-title' => 'Заказать звонок',
'data-form' => 'Заказать звонок',
'data-tag' => Bid::TAG_TREATMENT
],
]); ?>
<div class="message-box callback send_secce">
Ваша заявка отправлена. Мы обязательно ее рассмотрим.
</div>
<div class="content">
<?php echo Html::hiddenInput('scenario', $model->scenario, ['class' => 'not_clear']); ?>
<?php echo $form->field($model, 'form', ['template' => '{input}'])->hiddenInput(['class' => 'not_clear']); ?>
<div class="blog_form_left50 form_resp">
<div>
<?php echo $form->field($model, 'name')->textInput([
'placeholder' => "Ваше имя *",
'class' => 'input_st'
])->label(false); ?>
</div>
</div>
<div class="blog_form_right50 form_resp">
<?php echo $form->field($model, 'email')->textInput([
'placeholder' => 'E-mail *',
'class' => 'input_st'
])->label(false); ?>
</div>
<div class="clear"></div>
<?php echo $form->field($model, 'message')->textArea([
'placeholder' => 'Опишите пожалуйста чем вы занимаетесь и в каких проектах хотие использовать платформу TaskOn',
'class' => 'sect_cont_form__textarea'
])->label(false); ?>
<div class="clear"></div>
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm-index',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<?php echo Html::submitButton('Отправить',
['class' => 'save-button btn-default button-lg btn-custom']); ?>
</div>
<?php ActiveForm::end(); ?>
</div>
\ No newline at end of file
<section class="claud_sec">
<div class="claud_wrap">
<div class="container">
<div class="claud_box">
<div class="claud_txt">
<h3>
Мы являемся официальным
<br>
партнером Яндекс.Облако
</h3>
<p>Закажите перенос вашего сайта или сервиса</p>
</div>
<div class="claud_img">
<img src="./img_form/claud_img.png" alt="">
</div>
<div class="claud_btn">
<a href="#zvonok_form_yandex" class="btn_claud popup-form">Заказать</a>
</div>
</div>
</div>
</div>
</section>
<?php echo $this->render('callback_yandex_form'); ?>
\ No newline at end of file
This diff is collapsed.
<footer style="padding-top:70px">
<div class="container">
<div class="row">
<div class="col-md-4 col-xs-4 col-sm-12">
<a href="mailto:info@task-on.com" class="foot_mail">info@task-on.com</a>
</div>
<div class="col-md-4 col-xs-4 col-sm-12"><a href="#zvonok_form" class="zvonok_bt popup-form"><span><?= Yii::t('app', 'Request a call'); ?></span></a></div>
<div class="col-md-4 col-xs-4 col-sm-12">
<!-- <div class="phone_hover_foot">Стоимость звонка 0 руб,<br/> в том числе с мобильного</div> -->
<span class="foot_phone"><?= \common\models\Settings::getValue('content-phone'); ?></span>
</div>
</div>
<div class="footbottom_line">
<div class="row">
<div class="col-md-3 col-xs-3 col-sm-12">
<div class="foot_logo">
<img src="/images/foot_logo.png" height="51" width="192" alt="">
</div>
<footer class="footer">
<div class="footer_top">
<div class="container">
<div class="footer_top_wrap">
<div class="footer_top_column footer_top_column1">
<h4>Рекомендуем посмотреть</h4>
<ul class="footer_list1">
<li>
<a href="/portfolio">
<div class="footer_list_img">
<img src="./img_form/footer_icon1.png" alt="">
</div>
<span>Портфолио</span>
</a>
</li>
<li>
<a href="/resheniya-avtomatizacii-biznesa">
<div class="footer_list_img">
<img src="./img_form/footer_icon2.png" alt="">
</div>
<span>Услуги</span>
</a>
</li>
<li>
<a href="/taskon">
<div class="footer_list_img">
<img src="./img_form/footer_icon3.png" alt="">
</div>
<span>Платформа TaskOn 2</span>
</a>
</li>
</ul>
<ul class="footer_list2">
<li><a href="/faq">Руководство пользователя</a></li>
<li><a href="/platforma-taskon">Документация для разработчиков</a></li>
</ul>
</div>
<div class="footer_top_column footer_top_column2">
<ul class="footer_list1">
<li><a href="/about">О компании</a></li>
<li><a href="/blog">Блог</a></li>
<li><a href="/sozdanie-razrabotka-saitov-prilozheniya-yii">Разработка сайтов на <br>
Framework Yii 2</a></li>
<li><a href="/contacts">Контакты</a></li>
</ul>
</div>
<div class="col-md-6 col-xs-6 col-sm-12">
<div class="footer_top_column footer_top_column3">
<h4>Ответим на вопросы</h4>
<div class="footer_call_link">
<img src="./img_form/footer_icon4.png" alt="">
<?= \common\models\Settings::getValue('content-phone'); ?>
</div>
<a href="#zvonok_form" class="popup-form footer_callback">Заказать звонок</a>
<p class="footer_social_title">Подпишись на нас</p>
<?php echo $this->render('block/social'); ?>
</div>
<div class="col-md-3 col-xs-3 col-sm-12">
<div class="taskon">
<a href="/taskon" title="Подробнее о платформе TaskOn 2">
<img src="/images/taskon.png" height="31" width="100" alt="">
</a>
</div>
</div>
</div>
<div class="footer_bottom">
<div class="container">
<div class="footer_bottom_wrap">
<div class="footer_bottom_left">
<p>ООО "Арт Проект" аттестован по системе менеджмента качества ISO 9001:2015
<br>
и сертифицировано по информационной безопасности ISO 27001:2013.
</p>
<div class="footer_bottom_links">
<a href="/uploads/personal_data_processing_art_project.pdf" target="_blank">Политика обработки персональных данных</a>
<a href="/uploads/cookies_art_project.pdf" target="_blank">Политика в отношении cookie</a>
</div>
<div class="copyring text-center"><?= \Yii::t('footer', 'Powered by Taskon') ?></div>
</div>
<div class="footer_bottom_right">
<a href="/taskon" class="taskon"><img alt="" height="31" src="images/taskon.png" width="100"></a>
<p>
Powered by Taskon<br>
Собственная разработка Арт Проект
</p>
</div>
</div>
</div>
......@@ -39,4 +88,8 @@
<div class="up-button"></div>
</div>
<?php echo $this->render('block/callback'); ?>
\ No newline at end of file
<div class="hidden">
<?= $this->render('block/callback'); ?>
<?= $this->render('block/sources-form'); ?>
<?= $this->render('block/request_access') ?>
</div>
......@@ -58,5 +58,6 @@ endif;?>
<?php $this->registerCssFile('/css/style_crypto.css');?>
<?php $this->registerCssFile('/css/style_build.css');?>
<?php $this->registerCssFile('/css/jquery.fancybox.min.css');?>
<?php $this->registerCssFile('/css/style_form.css');?>
<?php Yii::$app->view->registerAssetFiles('/') ?>
......@@ -42,16 +42,37 @@ $lang = Languages::getCurrent();
</div>
<a href="#map" class="view_sheme_link scrollto show-scheme" data-tab="moscow"><?=\Yii::t('contacts', 'View a map')?></a>
</div>
<!-- <div class="col-md-6 col-xs-6 col-sm 12">-->
<!-- <div class="cont_block">-->
<!-- <div class="cont_block__city">--><?//=\Yii::t('contacts', 'Kazan')?><!--</div>-->
<!-- <div class="cont_block__phone"><strong>--><?//=\Yii::t('contacts', 'Phone')?><!--:</strong> --><?//=Settings::getValue('contacts-phone-kazan')?><!--</div>-->
<!-- <div class="cont_block__link_pp"><a href="#zvonok_form" class="popup-form">--><?//=\Yii::t('contacts', 'Call me')?><!--</a></div>-->
<!-- <div class="cont_block__email"><strong>E-mail:</strong> --><?//=Settings::getValue('contacts-email-kazan')?><!--</div>-->
<!-- <div class="cont_block__adr"><strong>--><?//=\Yii::t('contacts', 'Address')?><!--:</strong> --><?//=Settings::getValue('contacts-address-kazan'.(!$lang->default?'-'.$lang->url:''))?><!--</div>-->
<!-- </div>-->
<!-- <a href="#tabmap" class="view_sheme_link scrollto show-scheme" data-tab="kazan">--><?//=\Yii::t('contacts', 'View a map')?><!--</a>-->
<!-- </div>-->
<!-- <div class="col-md-6 col-xs-6 col-sm 12">
<div class="cont_block">
<div class="cont_block__city">
<?=\Yii::t('contacts', 'Kazan')?>
</div>
<div class="cont_block__phone">
<strong>
<?=\Yii::t('contacts', 'Phone')?>
:</strong>
<?=Settings::getValue('contacts-phone-kazan')?>
</div>
<div class="cont_block__link_pp">
<a href="#zvonok_form" class="popup-form">
<?=\Yii::t('contacts', 'Call me')?>
</a>
</div>
<div class="cont_block__email">
<strong>E-mail:</strong>
<?=Settings::getValue('contacts-email-kazan')?>
</div>
<div class="cont_block__adr">
<strong>
<?=\Yii::t('contacts', 'Address')?>
:</strong>
<?=Settings::getValue('contacts-address-kazan'.(!$lang->default?'-'.$lang->url:''))?>
</div>
</div>
<a href="#tabmap" class="view_sheme_link scrollto show-scheme" data-tab="kazan">
<?=\Yii::t('contacts', 'View a map')?>
</a>
</div> -->
</div>
</div>
</section>
......@@ -89,27 +110,31 @@ $lang = Languages::getCurrent();
</div>
</div>
<div class="row">
<div class="col-md-12 col-xs-12 col-sm-12">
<div class="sect_cont_block">
<?php
$model = new Bid;
$model->scenario = Bid::SCENARIO_CALLBACK;
$model->form = Bid::FORM_MESSAGE;
$form = ActiveForm::begin([
'id' => 'form_foot',
'action' => '/bids/bid/add',
'enableClientValidation' => false,
'options' => [
'class' => 'sect_cont_form bids-form',
'data-title' => 'Отправить сообщение с сайта',
'data-form' => 'Отправить сообщение с сайта',
'data-tag' => Bid::TAG_TREATMENT
],
]); ?>
<div class="message-box send_secce">Ваша заявка отправлена, мы вам перезвоним.</div>
<div class="col-md-12 col-sm-12">
<div class="calk_form calk_form_custom smt-margin">
<?php
$model = new Bid;
$model->scenario = Bid::SCENARIO_CALLBACK;
$model->form = Bid::FORM_PROJECT;
$form = ActiveForm::begin([
'id' => 'form_foot',
'action' => '/bids/bid/add',
'enableClientValidation' => false,
'options' => [
'class' => 'footer_form bids-form',
'data-title' => 'Рассчитать проект',
'data-form' => 'Рассчитать проект',
'enctype' => 'multipart/form-data',
'data-tag' => Bid::TAG_TREATMENT,
'method' => 'post',
'name' => 'form_foot'
],
]); ?>
<div class="message-box send_secce">Ваша заявка на проект успешно отправлена!</div>
<div class="content">
<?php echo Html::hiddenInput('scenario', $model->scenario, ['class' => 'not_clear']); ?>
......@@ -121,44 +146,65 @@ $lang = Languages::getCurrent();
'errorOptions' => []
])->textInput([
'placeholder' => \Yii::t('form', 'Your name'),
'class' => 'sect_cont_form__input'
'class' => 'footer_form__input'
]); ?>
<?php echo $form->field($model, 'phone', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => \Yii::t('form', 'Phone').' *',
'class' => 'sect_cont_form__input'
'placeholder' => \Yii::t('form', 'Telephone'),
'class' => 'footer_form__input'
]); ?>
<?php echo $form->field($model, 'email', [
'template' => '<div class="row"><div class="col-sm-4">{input}</div></div>',
'errorOptions' => []
])->textInput([
'placeholder' => 'E-mail*',
'class' => 'footer_form__input'
]); ?>
<?php echo $form->field($model, 'text')->textArea([
'placeholder' => \Yii::t('form', 'Write a message'),
'class' => 'sect_cont_form__textarea'
'class' => 'footer_form__textarea'
])->label(false); ?>
<div class="file-upload_block_cs dropzone" id="block_upload">
<div class="file_upload_bt_cs">
<div class="file-upload_cs">
<?php echo $form->field($model, 'confirm',
['template' => '{input}{label}{error}{hint}']
)->checkbox([
'id' => 'bid-confirm-index',
'checked' => false,
'required' => true,
'class' => 'footer_form__check',
'data-required-message' => Yii::t('form', 'Accept the terms')
],
false
)->label(Yii::t('form', 'I agree to') . " ". Html::a(\Yii::t('form', 'the terms of using personal data'), '/uploads/personal_data_processing_art_project.pdf', ['target' => '_blank']));
?>
<div class="file-upload_block dropzone" id="block_upload" style='top: 55px'>
<div class="file_upload_bt">
<div class="file-upload">
<label>
<span><?=\Yii::t('form', 'Choose file')?></span>
</label>
</div>
<div class="file_drop_cs"><?=\Yii::t('form', 'Drag any files here or choose in folder')?></div>
<div class="file_drop"><?=\Yii::t('form', 'Drag any files here or choose in folder')?></div>
</div>
</div>
<div id="files-zone">
</div>
<?php echo Html::submitButton(\Yii::t('form', 'Submit'), ['class' => 'btn-default save-button']); ?>
<div id="files-zone"></div>
<?php echo Html::submitButton(\Yii::t('index', 'Submit'), ['class' => 'btn-default save-button']); ?>
<div class="file-processing"><?= Yii::t('form', 'Please wait, file is loading...') ?></div>
</div>
<?php ActiveForm::end(); ?>
<?php ActiveForm::end(); ?>
</div>
</div>
</div>
</div>
</div>
</section>
<section id="map" class="sect_map">
......
......@@ -179,9 +179,6 @@ color: #fff;
content: "";
}
.table_header .box_td p {
margin: 0;
color: #2d3642;
......@@ -731,8 +728,6 @@ a.login_form_link, a.login_form_popup_link, a.reg_popup_link, a.reg_form_link{
.sh_ft .popup_text, .reg_form .popup_text{
margin-top: 10px;
}
.subsc_form input,
.subsc_blog_form input,
.blog-bid-form input{
display: block;
width: 273px;
......@@ -748,6 +743,46 @@ a.login_form_link, a.login_form_popup_link, a.reg_popup_link, a.reg_form_link{
font-size: 16px;
color: #83999e;
}
.subsc_form input,
.keys_send_mail form input,
.subsc_blog_form input {
border-radius: 2px;
font-size: 16px;
line-height: 18px;
width: 345px;
transition: 0.3s;
background: #e6ece0;
border: none;
height: 50px;
padding: 0px 14px;
color: #3c4755;
}
.subsc_form input:hover,
.keys_send_mail form input:hover,
.subsc_blog_form input:hover {
background-color: #e6ece0;
transition: 0.3s;
}
.subsc_form input:focus,
.keys_send_mail form input:focus,
.subsc_blog_form input:focus {
box-shadow: none;
background-color: #e6ece0;
transition: 0.3s;
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
.keys_send_mail form input {
margin: 0 auto 20px;
display: block;
}
}
@media only screen and (min-width: 320px) and (max-width: 479px) {
.keys_send_mail form input {
margin: 0 auto 20px;
width: 196px;
display: block;
}
}
.txt_server:before {
position: absolute;
}
......@@ -878,7 +913,19 @@ a.toggle_bottom:hover .icon-arrowDown2:after, a.toggle_bottom:active .icon-arrow
.article_short_tags {
margin-bottom: 14px;
}
.bids-form .message-box, .blog-bid-form .message-box {
.bids-form .message-box{
position: absolute;
z-index: 110;
text-align: center;
width: 480px;
left: 50%;
top: 35%;
font-size: 18px;
margin: -11px 0 0 -240px;
display: none;
line-height: 30px;
}
.blog-bid-form .message-box {
position: absolute;
z-index: 110;
text-align: center;
......
......@@ -3379,61 +3379,6 @@ ul.ul_check li {
}
}
a.zvonok_bt {
display: block;
width: 259px;
height: 60px;
border: 3px solid #FFFFFF;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
text-align: center;
line-height: 52px;
font-size: 20px;
color: #fff;
margin-left: 4px;
-moz-transition: all 0.3s linear 0.1s;
-o-transition: all 0.3s linear 0.1s;
-webkit-transition: all 0.3s linear 0.1s;
-ms-transition: all 0.3s linear 0.1s;
transition: all 0.3s linear 0.1s;
}
@media only screen and (min-width: 480px) and (max-width: 768px) {
a.zvonok_bt {
margin: 0 auto;
}
}
@media only screen and (min-width: 320px) and (max-width: 479px) {
a.zvonok_bt {
margin: 0 auto;
}
}
a.zvonok_bt span:before {
content: "";
background: url(../images/icon/phone2.png) no-repeat;
width: 22px;
height: 22px;
display: inline-block;
vertical-align: middle;
margin-right: 14px;
margin-top: -2px;
-moz-transition: all 0.3s linear 0.1s;
-o-transition: all 0.3s linear 0.1s;
-webkit-transition: all 0.3s linear 0.1s;
-ms-transition: all 0.3s linear 0.1s;
transition: all 0.3s linear 0.1s;
}
a.zvonok_bt:hover, a.zvonok_bt:active, a.zvonok_bt:focus {
color: #000;
text-decoration: none;
background: #fff;
}
a.zvonok_bt:hover span:before, a.zvonok_bt:active span:before, a.zvonok_bt:focus span:before {
background: url(../images/icon/phone_black.png) no-repeat;
}
.foot_phone {
font-size: 26px;
font-family: "RobotoLight";
......@@ -4047,39 +3992,25 @@ textarea.file-upload_block {
}
.input_st {
width: 264px;
height: 44px;
background: #F5F5F5;
border: none;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
margin-bottom: 34px;
color: #698387;
font-size: 16px;
padding: 0px 18px;
}
.input_st::-webkit-input-placeholder {
color: #698387;
border-radius: 2px;
font-size: 16px;
opacity: 1;
line-height: 18px;
width: 276px;
transition: 0.3s;
background: #F1F1F1;
border: none;
height: 50px;
padding: 0px 14px;
color: #3c4755;
}
.input_st:-moz-placeholder {
color: #698387;
font-size: 16px;
opacity: 1;
.input_st:hover {
background-color: #e6ece0;
transition: 0.3s;
}
.input_st::-moz-placeholder {
color: #698387;
font-size: 16px;
opacity: 1;
}
.input_st:-ms-input-placeholder {
color: #698387;
font-size: 16px;
opacity: 1;
.input_st:focus {
box-shadow: none;
background-color: #e6ece0;
transition: 0.3s;
}
.field-input.input-error {
......@@ -4087,36 +4018,20 @@ textarea.file-upload_block {
border: 1px solid #E9A2A2;
}
.popup_bt_send {
width: 256px;
height: 47px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
.demo-btn {
display: inline-block;
padding: 12px 40px;
border-radius: 3px;
background-color: rgb(253, 209, 4);
box-shadow: 0px 8px 23px 0px rgba(253, 209, 4, 0.35);
text-align: center;
color: #b39b02;
font-size: 16px;
background-image: linear-gradient(to top, #fdd000 0%, #fff04e 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-bottom: 4px solid #D2BF00;
margin: 0 auto;
}
.popup_bt_send:hover, .popup_bt_send:focus {
background-image: linear-gradient(to top, #fde654 0%, #fef77d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border-bottom: 4px solid #D2BF00;
}
.popup_bt_send:active {
background-image: linear-gradient(to top, #f4db15 0%, #fbd20d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-top: 4px solid #D2BF00;
line-height: 18px;
color: #464646;
text-decoration: none !important;
border: none !important;
transition: 0.3s;
width: 276px
}
.phone_hover_foot {
......@@ -11339,54 +11254,7 @@ h6 {
line-height: 20px;
}
}
.keys_send_mail form input {
width: 273px;
height: 49px;
background: #fff;
border: 1px solid #E9E9E9;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
-o-border-radius: 10px;
-ms-border-radius: 10px;
color: #83999e;
font-size: 16px;
padding: 0px 12px;
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
.keys_send_mail form input {
margin: 0 auto 20px;
display: block;
}
}
@media only screen and (min-width: 320px) and (max-width: 479px) {
.keys_send_mail form input {
margin: 0 auto 20px;
width: 196px;
display: block;
}
}
.keys_send_mail form button {
width: 178px;
height: 50px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
text-align: center;
color: #b39b02;
font-family: "RobotoBold";
font-size: 20px;
background-image: linear-gradient(to top, #fdd000 0%, #fff04e 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-bottom: 4px solid #D2BF00;
line-height: 43px;
display: inline-block;
margin: 0px 0px 0px 16px;
}
@media only screen and (min-width: 480px) and (max-width: 767px) {
.keys_send_mail form button {
margin: 0 auto 20px;
......@@ -11399,21 +11267,6 @@ h6 {
display: block;
}
}
.keys_send_mail form button:hover, .keys_send_mail form button:focus {
background-image: linear-gradient(to top, #fde654 0%, #fef77d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border-bottom: 4px solid #D2BF00;
text-decoration: none;
}
.keys_send_mail form button:active {
background-image: linear-gradient(to top, #f4db15 0%, #fbd20d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-top: 4px solid #D2BF00;
text-decoration: none;
}
.send_secce {
font-size: 14px;
......@@ -12716,41 +12569,21 @@ p.sborka_shkafov_bigp {
background: #fff url(../images/icon-fail.png) no-repeat 96% center;
border: 1px solid #E9A2A2;
}
.subsc_form button {
width: 178px;
height: 50px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
text-align: center;
color: #655d04;
font-family: "RobotoBold";
font-size: 20px;
background-image: linear-gradient(to top, #fdd000 0%, #fff04e 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-bottom: 4px solid #D2BF00;
line-height: 43px;
.subsc_form button,
.keys_send_mail form button,
.blog-subscribe-button {
display: inline-block;
margin: 20px 0px 0px;
}
.subsc_form button:hover, .subsc_form button:focus {
background-image: linear-gradient(to top, #fde654 0%, #fef77d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border-bottom: 4px solid #D2BF00;
text-decoration: none;
}
.subsc_form button:active {
background-image: linear-gradient(to top, #f4db15 0%, #fbd20d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-top: 4px solid #D2BF00;
text-decoration: none;
padding: 12px 40px;
border-radius: 3px;
background-color: rgb(253, 209, 4);
box-shadow: 0px 8px 23px 0px rgba(253, 209, 4, 0.35);
text-align: center;
font-size: 16px;
line-height: 18px;
color: #464646;
text-decoration: none !important;
border: none !important;
transition: 0.3s;
}
.end_keys_neft {
......@@ -14140,42 +13973,6 @@ li.appl_list_icon {
background: #fff url(../images/icon-fail.png) no-repeat 96% center;
border: 1px solid #E9A2A2;
}
.subsc_blog_form button {
width: 178px;
height: 50px;
border-radius: 50px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-o-border-radius: 50px;
-ms-border-radius: 50px;
text-align: center;
color: #655d04;
font-family: "RobotoBold";
font-size: 20px;
background-image: linear-gradient(to top, #fdd000 0%, #fff04e 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-bottom: 4px solid #D2BF00;
line-height: 43px;
display: inline-block;
margin: 20px 0px 0px;
}
.subsc_blog_form button:hover, .subsc_blog_form button:focus {
background-image: linear-gradient(to top, #fde654 0%, #fef77d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border-bottom: 4px solid #D2BF00;
text-decoration: none;
}
.subsc_blog_form button:active {
background-image: linear-gradient(to top, #f4db15 0%, #fbd20d 100%);
box-shadow: 2px 3.5px 5px rgba(0, 0, 0, 0.12);
color: #908505;
border: none;
border-top: 4px solid #D2BF00;
text-decoration: none;
}
.article_short {
margin-bottom: 57px;
......
This diff is collapsed.
......@@ -90,6 +90,7 @@ $(document).ready(function () {
if(!$('.case-subscribe-email').hasClass('case-subscribe-hide')) {
$('.case-subscribe-email').addClass('case-subscribe-hide');
$('.case-subscribe-name').removeClass('case-subscribe-hide');
$('.case-subscribe-button').css('margin-top', '20px');
} else {
$('.case-subscribe-name').addClass('case-subscribe-hide');
$('.case-subscribe-button').hide();
......
$('.bids-form input[name="Bid[phone]"]').mask("+7(999)999-99-99");
$('form.bids-form').on('beforeSubmit', function(e) {
var form = $(this), xhr = new XMLHttpRequest, filebool = false, file, data = new FormData();
e.preventDefault();
var $form = $(this), data = new FormData(this);
form.find('input, textarea').each(function(){
data.append($(this).attr('name'), $(this).val());
});
if(form.find('input[type=file]').length) {
file = form.find('input[type=file]')[0].files[0];
filebool = !filebool;
data.append("Bid[file]", file);
}
xhr.open("POST", form.attr('action'), true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.send(data);
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4){
try
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: data,
processData: false,
contentType: false
}).done(function(response) {
if(response.success)
{
if($form.find('.message-box').length > 0)
{
var response = JSON.parse(xhr.responseText);
}
catch(e)
{
var response = xhr.responseText;
}
$form.find('.content').css('opacity','0');
$form.find('.content').css('visibility','hidden');
$form.find('.message-box').fadeIn('fast');
form.find('.has-error').removeClass('has-error');
if(response.success)
{
if(form.find('.message-box').length > 0)
{
form.find('.content').css('opacity','0');
form.find('.content').css('visibility','hidden');
form.find('.message-box').fadeIn('fast');
setTimeout(function(){
form.find('.message-box').fadeOut('fast');
form.find('.content').css('visibility','visible');
form.find('.content').css('opacity','1');
form.closest(".mfp-content").find(".mfp-close").click()
}, 2000);
}
form.find('input:not(.not_clear), textarea').val('');
setTimeout(function(){
$form.find('.message-box').fadeOut('fast');
$form.find('.content').css('visibility','visible');
$form.find('.content').css('opacity','1');
$form.closest(".mfp-content").find(".mfp-close").click()
}, 2000);
}
//$form.find('input:not(.not_clear), textarea').val('');
$form.trigger('reset');
form.find('#files-zone').html('');
$('.dz-preview.dz-processing').remove();
$('.file_drop').show();
$('.file_drop_cs').show();
$('.file_upload_bt_cs').show();
$('.file_upload_bt').show();
$form.find('#files-zone').html('');
$('.dz-preview.dz-processing').remove();
$('.file_drop').show();
$('.file_drop_cs').show();
$('.file_upload_bt_cs').show();
$('.file_upload_bt').show();
dataLayer.push({
'event': 'UA_event',
'Catagory': form.data('tag'),
'Action': form.data('title'),
'Label': 'Успешно'
});
}
else
{
errors = [];
$.each(response, function(key, value) {
form.find('.field-'+key).addClass('has-error');
errors = errors.concat(value);
});
dataLayer.push({
'event': 'UA_event',
'Catagory': $form.data('tag'),
'Action': $form.data('title'),
'Label': 'Успешно'
});
}
else
{
var errors = [];
$.each(response, function(key, value) {
$form.find('.field-'+key).addClass('has-error');
errors = errors.concat(value);
});
dataLayer.push({
'event': 'UA_event',
'Catagory': 'Ошибки',
'Action': form.data('form'),
'Label': errors
});
}
dataLayer.push({
'event': 'UA_event',
'Catagory': 'Ошибки',
'Action': $form.data('form'),
'Label': errors
});
}
}
}).fail(function(jqXHR, textStatus, errorThrown) {
dataLayer.push({
'event': 'UA_event',
'Catagory': 'Ошибки',
'Action': $form.data('form'),
'Label': textStatus
});
});
//
// $form.find('input, textarea').each(function(){
// data.append($(this).attr('name'), $(this).val());
// });
//
// if($form.find('input[type=file]').length) {
// file = form.find('input[type=file]')[0].files[0];
// filebool = !filebool;
// data.append("Bid[file]", file);
// }
//
// xhr.open("POST", form.attr('action'), true);
// xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
//
// xhr.send(data);
// xhr.onreadystatechange = function()
// {
// if (xhr.readyState == 4){
// try
// {
// var response = JSON.parse(xhr.responseText);
// }
// catch(e)
// {
// var response = xhr.responseText;
// }
//
// $form.find('.has-error').removeClass('has-error');
//
// if(response.success)
// {
// if($form.find('.message-box').length > 0)
// {
// $form.find('.content').css('opacity','0');
// $form.find('.content').css('visibility','hidden');
// $form.find('.message-box').fadeIn('fast');
//
// setTimeout(function(){
// $form.find('.message-box').fadeOut('fast');
// $form.find('.content').css('visibility','visible');
// $form.find('.content').css('opacity','1');
// $form.closest(".mfp-content").find(".mfp-close").click()
// }, 2000);
// }
// $form.find('input:not(.not_clear), textarea').val('');
//
// $form.find('#files-zone').html('');
// $('.dz-preview.dz-processing').remove();
// $('.file_drop').show();
// $('.file_drop_cs').show();
// $('.file_upload_bt_cs').show();
// $('.file_upload_bt').show();
//
// dataLayer.push({
// 'event': 'UA_event',
// 'Catagory': form.data('tag'),
// 'Action': form.data('title'),
// 'Label': 'Успешно'
// });
// }
// else
// {
// var errors = [];
// $.each(response, function(key, value) {
// $form.find('.field-'+key).addClass('has-error');
// errors = errors.concat(value);
// });
//
// dataLayer.push({
// 'event': 'UA_event',
// 'Catagory': 'Ошибки',
// 'Action': $form.data('form'),
// 'Label': errors
// });
// }
// }
// }
}).on('submit', function(e){
return false;
});
$('.footer_form__check').on('invalid', function () {
var $this = $(this);
this.setCustomValidity($this.data('required-message'));
}).on('change', function () {
this.setCustomValidity('');
});
\ No newline at end of file
......@@ -117,8 +117,8 @@
url: null,
method: "post",
withCredentials: false,
parallelUploads: 2,
uploadMultiple: false,
parallelUploads: 3,
uploadMultiple: true,
maxFilesize: 256,
paramName: "file",
createImageThumbnails: true,
......
......@@ -22,14 +22,28 @@ $(document).ready(function() {
maxFiles: 4,
maxFilesize: 15,
addRemoveLinks: true,
acceptedFiles: '.xls,.doc,.docx,.xlsx,.png,.jpeg,.gif,.bmp,.jpg,.zip,.rar,.tar,.pptx,.ppt,.csv',
acceptedFiles: '.xls,.doc,.docx,.xlsx,.png,.jpeg,.gif,.bmp,.jpg,.zip,.rar,.tar,.pptx,.ppt,.csv,.pdf',
dictRemoveFile: 'Удалить',
dictInvalidFileType: 'Приложенный файл не может быть загружен в целях безопасности. Пожалуйста, приложите файл в другом формате (Word, Pdf, PowerPoint, Excel).',
dictFileTooBig: 'Максимальный размер файла составляет 15мб.',
dictCancelUpload: 'Отменить загрузку',
success: function(file, response) {
file.filename = response.filename;
$('#files-zone').append('<input type="hidden" name="Bid[file][]" value="'+response.filename+'" />');
init: function() {
this.on("queuecomplete", function(file) {
var $form = $(this.element).closest('form');
$form.find('[type="submit"]').attr('disabled', false);
$form.find('.file-processing').fadeOut();
});
this.on("addedfile", function(file) {
var $form = $(this.element).closest('form');
$form.find('[type="submit"]').attr('disabled', true);
$form.find('.file-processing').fadeIn();
});
},
successmultiple: function(files, response) {
$.each(files, function (index, file) {
file.filename = response.files[index];
$('#files-zone').append('<input type="hidden" name="Bid[file][]" value="'+response.files[index] +'" />');
});
toggleButtons();
},
removedfile: function (file) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment