Commit 8b06a59d by semenov

start project

parents
The Yii framework is free software. It is released under the terms of
the following BSD License.
Copyright © 2010 by Yii Software LLC (http://www.skeeks.com)
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of Yii Software LLC nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
Приложение построенное на базе SkeekS CMS (Yii2)
===================================
Вся документация по проекту доступна:
[http://dev.cms.skeeks.com/](http://dev.cms.skeeks.com/)
> [![skeeks!](https://gravatar.com/userimage/74431132/13d04d83218593564422770b616e5622.jpg)](http://www.skeeks.com)
<i>Web development has never been so fun!</i>
[www.skeeks.com](http://www.skeeks.com)
<?php
/**
* Этот класс никогда не запускается, служит просто для подсказок IDE
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 12.11.2014
* @since 1.0.0
*/
namespace yii\web;
use common\components\boomerang\TemplateBoomerang;
/**
* @property TemplateBoomerang $templateBoomerang
*
* Class Application
* @package yii\web
*/
class Application
{}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 27.10.2015
*/
namespace common\components\boomerang;
use frontend\assets\BoomerangThemeAsset;
use skeeks\cms\base\Component;
use skeeks\cms\components\Cms;
use \Yii;
use yii\helpers\ArrayHelper;
/**
* @var string $bodyCssClasses
*
* Class TemplateBoomerang
* @package common\components\unify
*/
class TemplateBoomerang extends Component
{
/**
* @return array
*/
static public function themes()
{
return [
'blue' => 'Синяя',
'violet' => 'Пурпурная',
'orange' => 'Оранжевая',
'red' => 'Красная',
'green' => 'Зеленая',
'yellow' => 'Желтая',
];
}
/**
* Можно задать название и описание компонента
* @return array
*/
static public function descriptorConfig()
{
return array_merge(parent::descriptorConfig(), [
'name' => 'Настройки шаблона Boomerang',
]);
}
/**
* @var string Цветовая схема
*/
public $themeColor = "blue";
/**
* @var string Изображение для фона
*/
public $boxedBgImage = "/img/pattern-3.png";
public $boxedBgCss = "repeat";
/**
* @var string
*/
public $boxedLayout = Cms::BOOL_Y;
public function rules()
{
return ArrayHelper::merge(parent::rules(), [
[['themeColor'], 'string'],
[['boxedBgImage'], 'string'],
[['boxedLayout'], 'string'],
]);
}
public function attributeLabels()
{
return ArrayHelper::merge(parent::attributeLabels(), [
'themeColor' => 'Цветовая схема',
'boxedBgImage' => 'Фоновое изображение',
'boxedLayout' => 'Фиксированный шаблон',
]);
}
/**
* @return $this
*/
public function initTheme()
{
if ($this->themeColor)
{
if (in_array($this->themeColor, array_keys(self::themes())))
{
\Yii::$app->view->registerCssFile(BoomerangThemeAsset::getAssetUrl('css/global-style-' . $this->themeColor . '.css'), [
'depends' =>
[
'frontend\assets\BoomerangThemeAsset'
]
]);
}
}
if ($this->boxedBgImage)
{
\Yii::$app->view->registerCss(<<<CSS
body
{
background: url('{$this->boxedBgImage}') {$this->boxedBgCss};
}
CSS
);
}
return $this;
}
/**
* @return string
*/
public function getBodyCssClasses()
{
if ($this->boxedLayout == Cms::BOOL_Y)
{
return 'body-boxed';
}
return '';
}
}
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 27.03.2015
*/
use yii\helpers\Html;
use skeeks\cms\modules\admin\widgets\form\ActiveFormUseTab as ActiveForm;
$modelClassName = $model->className();
/* @var $this yii\web\View */
/* @var $model \common\components\unify\TemplateUnify */
?>
<?php $form = ActiveForm::begin(); ?>
<?= $form->fieldSet('Основное'); ?>
<?= $form->fieldSelect($model, 'themeColor', $modelClassName::themes(), [
'allowDeselect' => true
])->hint(''); ?>
<?= $form->fieldRadioListBoolean($model, 'boxedLayout'); ?>
<?= $form->field($model, 'boxedBgImage')->widget(
\skeeks\cms\modules\admin\widgets\formInputs\OneImage::className()
); ?>
<?= $form->fieldSetEnd(); ?>
<?= $form->buttonsCreateOrUpdate($model); ?>
<?php ActiveForm::end(); ?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 19.03.2015
*/
namespace common\components\unify;
use skeeks\cms\base\Component;
use skeeks\cms\components\Cms;
use \Yii;
use yii\helpers\ArrayHelper;
/**
* @property string $bodyClasses
*
* Class TemplateUnify
* @package common\components\unify
*/
class TemplateUnify extends Component
{
/**
* @var array Доступные темы
*/
static public $themes =
[
'purple' => 'Пурпурная',
'orange' => 'Оранжевая',
'blue' => 'Синяя',
'red' => 'Красная',
];
/**
* Можно задать название и описание компонента
* @return array
*/
static public function descriptorConfig()
{
return array_merge(parent::descriptorConfig(), [
'name' => 'Настройки шаблона Unify',
]);
}
/**
* @var string Цветовая схема
*/
public $themeColor = "";
/**
* @var string Изображение для фона
*/
public $boxedBgImage = "";
/**
* @var string
*/
public $boxedLayout = Cms::BOOL_Y;
public function rules()
{
return ArrayHelper::merge(parent::rules(), [
[['themeColor'], 'string'],
[['boxedBgImage'], 'string'],
[['boxedLayout'], 'string'],
]);
}
public function attributeLabels()
{
return ArrayHelper::merge(parent::attributeLabels(), [
'themeColor' => 'Цветовая схема',
'boxedBgImage' => 'Фоновое изображение',
'boxedLayout' => 'Boxed Layout',
]);
}
/**
* @return $this
*/
public function initTheme()
{
if ($this->themeColor)
{
if (in_array($this->themeColor, array_keys(self::$themes)))
{
\Yii::$app->view->registerCssFile('/unify/css/theme-colors/' . $this->themeColor . '.css', [
'depends' =>
[
'frontend\assets\AppAsset'
]
]);
}
}
if ($this->boxedBgImage)
{
\Yii::$app->view->registerCss(<<<CSS
body.boxed-layout
{
background: url('{$this->boxedBgImage}') fixed center;
}
CSS
);
}
return $this;
}
/**
* @return string
*/
public function getBodyClasses()
{
if ($this->boxedLayout == Cms::BOOL_Y)
{
return 'boxed-layout container';
}
return '';
}
}
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 27.03.2015
*/
use yii\helpers\Html;
use skeeks\cms\modules\admin\widgets\form\ActiveFormUseTab as ActiveForm;
$modelClassName = $model->className();
/* @var $this yii\web\View */
/* @var $model \common\components\unify\TemplateUnify */
?>
<?php $form = ActiveForm::begin(); ?>
<?= $form->fieldSet('Основное'); ?>
<?= $form->fieldSelect($model, 'themeColor', $modelClassName::$themes, [
'allowDeselect' => true
])->hint(''); ?>
<?= $form->fieldRadioListBoolean($model, 'boxedLayout'); ?>
<?= $form->field($model, 'boxedBgImage')->textInput(); ?>
<?= $form->fieldSetEnd(); ?>
<?= $form->buttonsCreateOrUpdate($model); ?>
<?php ActiveForm::end(); ?>
main-local.php
params-local.php
<?php
/**
* Автоматически сгенерированные конфиг, можно просто удалить этот файл.
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 2929.1010.20152015
* @since 1.0.0
*/
return [
'web' => [
"/var/www/sites/skeeks-cms/vendor/skeeks/cms-assets-auto-compress/config/main.php",
"/var/www/sites/skeeks-cms/vendor/skeeks/cms/config/main.php",
"/var/www/sites/skeeks-cms/vendor/skeeks/cms-module-form2/config/main.php",
],
'console' => [
"/var/www/sites/skeeks-cms/vendor/skeeks/cms/config/main-console.php",
"/var/www/sites/skeeks-cms/vendor/skeeks/cms-module-form2/config/main-console.php",
]
];
\ No newline at end of file
<?php
/**
* bootstrap
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
//TODO: Я думаю стоит это потом отсюда убрать
Yii::setAlias('common', dirname(__DIR__));
Yii::setAlias('frontend', dirname(dirname(__DIR__)) . '/frontend');
Yii::setAlias('console', dirname(dirname(__DIR__)) . '/console');
<?php
/**
* @author Semenov Alexander <support@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 17.09.2015
*/
return [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=skeeks',
'username' => 'skeeks',
'password' => 'N7j27QFsbMn4EV77',
'charset' => 'utf8',
'enableSchemaCache' => true,
'schemaCacheDuration' => 3600,
];
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
defined('YII_DEBUG') or define('YII_DEBUG', true);
\ No newline at end of file
<?php
return [
'components' => [
/*'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=mysql.skeeks.com;dbname=hosting2_vz115_yii2-skeeks',
'username' => 'hosting2_vz115',
'password' => 'sejbiemhakfefvieltishcyGa',
'charset' => 'utf8',
],*/
/*'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
],*/
/*'authClientCollection' => [
'class' => 'yii\authclient\Collection',
'clients' => [
'google' => [
'class' => 'yii\authclient\clients\GoogleOpenId'
],
'facebook' => [
'class' => 'yii\authclient\clients\Facebook',
'clientId' => '579310182082188',
'clientSecret' => '5ebda6d912a7dd639d1adb6cb17737bf',
],
'VKontakte' => [
'class' => 'yii\authclient\clients\VKontakte',
'clientId' => '4583094',
'clientSecret' => 't6GSFiVIP3TNNtVXGgw0',
],
'Twitter' => [
'class' => 'yii\authclient\clients\Twitter',
'consumerKey' => '9nzpNX6HQNq1vknAYiiA',
'consumerSecret' => 'LwGcABjBOQq0iFdR0iBZ0xvhVddn6TCvyfTLyjYD4Gw',
],
],
]*/
],
];
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
defined('YII_DEBUG') or define('YII_DEBUG', false);
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.02.2015
* @since 1.0.0
*/
defined('YII_DEBUG') or define('YII_DEBUG', false);
\ No newline at end of file
<?php
/**
* Общий конфиг для всего приложения
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 15.10.2014
* @since 1.0.0
*/
$config = [
'name' => 'SkeekS CMS',
'components' =>
[
'db' => include_once __DIR__ . '/db.php',
'urlManager' => [
'rules' => [
[
'class' => \skeeks\cms\components\urlRules\UrlRuleContentElement::className(),
],
[
'class' => \skeeks\cms\components\urlRules\UrlRuleTree::className(),
]
]
],
'cache' => [
'class' => 'yii\caching\FileCache',
],
'templateBoomerang' => [
'class' => 'common\components\boomerang\TemplateBoomerang',
],
],
];
return $config;
<?php
/**
* базовые глобальные опции
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.11.2014
* @since 1.0.0
*/
return
[
'publication' =>
[
'modelClass' => 'skeeks\cms\models\Publication',
'name' => 'Публикация',
'types' =>
[
'news' =>
[
'name' => 'Новость'
],
'article' =>
[
'name' => 'Статья',
],
],
/*'actionViews' =>
[
'news' =>
[
'name' => 'Новость'
],
'article' =>
[
'name' => 'Статья',
],
]*/
],
'tree' =>
[
'types' =>
[
'homePage' =>
[
'name' => 'Главная страница',
'actionView' => 'home',
],
'secondPage' =>
[
'name' => 'Вторая страница',
'actionView' => 'second'
],
'contacts' =>
[
'name' => 'Страница контактов',
'actionView' => 'contacts'
],
],
'actionViews' =>
[
'home' =>
[
'name' => 'Главная страница'
],
'second' =>
[
'name' => 'Вторая страница',
],
'contacts' =>
[
'name' => 'Страница контактов',
],
]
],
];
\ No newline at end of file
<?php
return [
//Yii standart params
];
<?php
/**
* app
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 17.10.2014
* @since 1.0.0
*/
return include_once \Yii::getAlias("@common/messages/ru/app.php");
\ No newline at end of file
<?php
/**
* app
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 17.10.2014
* @since 1.0.0
*/
return array_merge(
(array) include_once \Yii::getAlias("@skeeks/cms/messages/ru/main.php"),
//(array) include_once \Yii::getAlias("@skeeks/modules/cms/game/messages/ru/main.php"),
[
"Common translates" => "Общие сообщения"
]
);
<?php
/**
* User
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 29.10.2014
* @since 1.0.0
*/
namespace common\models;
use skeeks\cms\models\User as CmsUser;
use skeeks\modules\cms\game\models\Game;
use skeeks\modules\cms\game\models\GameCompany;
use skeeks\modules\cms\game\models\searchs\GameGenre;
use skeeks\modules\cms\game\models\searchs\GamePlatform;
/**
* Class User
* @package common\models
*/
class User
extends CmsUser
{
//Сюда пишем методя для расширения базовой сущьности пользователя, для конкретно этого проекта
/**
* @return \yii\db\ActiveQuery
*/
public function getGames()
{
return $this->hasMany(Game::className(), ['updated_by' => 'id']);
}
/**
* @return \yii\db\ActiveQuery
*/
public function getGameCompanies()
{
return $this->hasMany(GameCompany::className(), ['updated_by' => 'id']);
}
/**
* @return \yii\db\ActiveQuery
*/
public function getGameGenres()
{
return $this->hasMany(GameGenre::className(), ['updated_by' => 'id']);
}
/**
* @return \yii\db\ActiveQuery
*/
public function getGamePlatforms()
{
return $this->hasMany(GamePlatform::className(), ['updated_by' => 'id']);
}
}
\ No newline at end of file
*
!.gitignore
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 20.03.2015
*/
namespace common\widgets;
use yii\base\Widget;
class Fancybox extends Widget
{
public $registered = [];
public $id;
public $content;
public function run()
{
}
}
\ No newline at end of file
{
"name": "skeeks/cms-app",
"description": "Приложение построенное на базе SkeekS CMS",
"keywords": ["framework", "cms", "skeeks", "sx", "app", "yii2"],
"homepage": "http://cms.skeeks.com",
"type": "project",
"license": "BSD-3-Clause",
"support": {
"issues": "http://cms.skeeks.com",
"wiki": "http://git.skeeks.com/skeeks/cms/wikis/home",
"source": "http://git.skeeks.com/skeeks/cms-app"
},
"authors": [
{
"name": "Semenov Alexander",
"email": "semenov@skeeks.com"
}
],
"require": {
"skeeks/cms": "*",
"skeeks/cms-module-form2": "*",
"skeeks/cms-assets-auto-compress": "*",
"skeeks/yii2-template-boomerang": "*"
},
"minimum-stability" : "dev",
"prefer-stable" : true,
"extra": {
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
},
"config": {
"process-timeout": 1800,
"github-oauth": {"github.com":"ff775d641e892c224dfc52db551a8942d16d1674"}
}
}
This diff is collapsed. Click to expand it.
main-local.php
params-local.php
\ No newline at end of file
<?php
/**
* global
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
defined('YII_DEBUG') or define('YII_DEBUG', true);
\ No newline at end of file
<?php
return [
];
\ No newline at end of file
<?php
/**
* global
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
defined('YII_DEBUG') or define('YII_DEBUG', false);
\ No newline at end of file
<?php
/**
* main
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
return [
'id' => 'app-console',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log', 'gii', 'cms'],
'controllerNamespace' => 'console\controllers',
'modules' => [
'gii' => 'yii\gii\Module',
],
'components' => [
'log' => [
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
],
'params' => (new \skeeks\cms\Config([
COMMON_CONFIG_DIR . "/params.php",
COMMON_ENV_CONFIG_DIR . "/params.php",
APP_CONFIG_DIR . "/params.php",
APP_ENV_CONFIG_DIR . "/params.php"
]))->getResult(),
];
<?php
return [
'adminEmail' => 'admin@example.com',
];
*
!.gitignore
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
/**
* Class AppAsset
* @package frontend\assets
*/
class AppAsset extends \skeeks\cms\base\AssetBundle
{
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [
'css/app.css',
];
public $js = [
'smarty/js/scripts.js',
'js/app.js',
];
public $depends = [
'yii\web\YiiAsset',
'yii\bootstrap\BootstrapPluginAsset',
'\skeeks\sx\assets\Custom',
'\skeeks\cms\assets\FancyboxAssets',
'\frontend\assets\BoomerangThemeAsset',
];
}
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
use skeeks\template\boomerang\BoomerangAsset;
/**
* Class SmartyThemeAsset
* @package frontend\assets
*/
class BoomerangThemeAsset extends BoomerangAsset
{
public $css = [
'font-awesome/css/font-awesome.min.css',
'css/global-style.css',
'assets/layerslider/css/layerslider.css',
];
public $js = [
'assets/layerslider/js/greensock.js',
'assets/layerslider/js/layerslider.transitions.js',
'assets/layerslider/js/layerslider.kreaturamedia.jquery.js',
];
}
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
use skeeks\template\smarty\SmartyAsset;
/**
* Class OwnCarouselAsset
* @package frontend\assets
*/
class OwnCarouselAsset extends AppAsset
{
public $css = [];
public $js = [
'js/classes/OwnCarousel.js',
];
public $depends = [
'\frontend\assets\OwnCarouselSmartyAsset',
];
}
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
use skeeks\template\smarty\SmartyAsset;
/**
* Class OwnCarouselAsset
* @package frontend\assets
*/
class OwnCarouselSmartyAsset extends SmartyAsset
{
public $css = [];
public $js = [
'plugins/owl-carousel/owl.carousel.min.js',
];
public $depends = [
'\frontend\assets\AppAsset',
];
}
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
use skeeks\template\smarty\SmartyAsset;
/**
* Class RevolutionSliderAsset
* @package frontend\assets
*/
class RevolutionSliderAsset extends SmartyAsset
{
public $css = [
'plugins/slider.revolution/css/extralayers.css',
'plugins/slider.revolution/css/settings.css',
];
public $js = [
'plugins/slider.revolution/js/jquery.themepunch.tools.min.js',
'plugins/slider.revolution/js/jquery.themepunch.revolution.min.js',
'js/view/demo.revolution_slider.js',
];
public $depends = [
'\frontend\assets\SmartyThemeAsset',
];
}
\ No newline at end of file
<?php
/**
* AppAsset
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 20.10.2014
* @since 1.0.0
*/
namespace frontend\assets;
use skeeks\template\smarty\SmartyAsset;
/**
* Class SmartyThemeAsset
* @package frontend\assets
*/
class SmartyThemeAsset extends SmartyAsset
{
public $css = [
'https://fonts.googleapis.com/css?family=Open+Sans:300,400%7CRaleway:300,400,500,600,700%7CLato:300,400,400italic,600,700',
'css/essentials.css',
'css/layout.css',
'css/layout-shop.css',
'css/header-1.css',
'css/color_scheme/blue.css',
];
public $js = [
//'js/scripts.js',
];
}
\ No newline at end of file
main-local.php
params-local.php
\ No newline at end of file
<?php
$config = [
'bootstrap' => ['debug'],
'modules' => [
'gii' =>
[
'allowedIPs' => ['80.243.13.242', '127.*']
],
'debug' =>
[
'allowedIPs' => ['*'] // adjust this to your needs
]
],
/*'components' => [
'request' => [
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
'cookieValidationKey' => 'skeeks1',
],
],*/
];
return $config;
<?php
$config = [
/*'components' => [
'request' => [
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
'cookieValidationKey' => 'skeeks',
],
],*/
];
return $config;
<?php
/**
* TODO: Неиспользуемый файл на всякий случай
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 19.02.2015
* @since 1.0.0
*/
require(__DIR__ . '/../../common/config/global.php');
\ No newline at end of file
<?php
/**
* Конфиг сайтвой части приложения
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 15.10.2014
* @since 1.0.0
*/
$config = [
'basePath' => dirname(__DIR__),
'controllerNamespace' => 'frontend\controllers',
'params' => (new \skeeks\cms\Config([
COMMON_CONFIG_DIR . "/params.php",
COMMON_ENV_CONFIG_DIR . "/params.php",
APP_CONFIG_DIR . "/params.php",
APP_ENV_CONFIG_DIR . "/params.php"
]))->getResult(),
'components' =>
[
'errorHandler' => [
'errorAction' => 'cms/error/error',
],
'request' => [
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
'cookieValidationKey' => 'skeeks2',
],
'user' =>
[
'identityClass' => 'common\models\User',
/*'identityCookie' => [
'name' => '_identity',
'httpOnly' => true,
'domain' => '.cms.skeeks.com'
]*/
],
]
];
return $config;
\ No newline at end of file
<?php
/**
* ProfileController
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 14.10.2014
* @since 1.0.0
*/
namespace frontend\controllers;
use Yii;
use common\models\LoginForm;
use frontend\models\PasswordResetRequestForm;
use frontend\models\ResetPasswordForm;
use frontend\models\SignupForm;
use frontend\models\ContactForm;
use yii\base\InvalidParamException;
use yii\helpers\ArrayHelper;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use yii\web\Response;
/**
* Class ProfileController
* @package frontend\controllers
*/
class ParseController extends Controller
{
public function actionParse()
{
$KolyanFile = "http://bngnwww.b-ch.com/caption/35470338/2515/583829901912586/4496347453.xml?cashPath=1436712794100";
$result = \common\Xml2Array::go(file_get_contents($KolyanFile));
$counter = 1;
$data = ArrayHelper::getValue($result, 'tt.body.div.0.p');
foreach ($data as $row)
{
echo $counter . PHP_EOL;
echo ArrayHelper::getValue($row, 'attr.begin') . ' --> ' . ArrayHelper::getValue($row, 'attr.end') . PHP_EOL;
echo ArrayHelper::getValue($row, 'value') . PHP_EOL . PHP_EOL;
$counter++;
}
\Yii::$app->response->format = Response::FORMAT_RAW;
\Yii::$app->response->headers->set('Content-Type', 'text/plain');
$this->layout = false;
return;
}
}
\ No newline at end of file
<?php
/**
* ProfileController
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 14.10.2014
* @since 1.0.0
*/
namespace frontend\controllers;
use Yii;
use common\models\LoginForm;
use frontend\models\PasswordResetRequestForm;
use frontend\models\ResetPasswordForm;
use frontend\models\SignupForm;
use frontend\models\ContactForm;
use yii\base\InvalidParamException;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
/**
* Class ProfileController
* @package frontend\controllers
*/
class ProfileController extends Controller
{
/**
* @inheritdoc
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['edit'],
'allow' => true,
'roles' => ['@'],
],
],
],
];
}
public function actionIndex()
{
return $this->render('index');
}
public function actionEdit()
{
$user = \skeeks\cms\App::getUser();
return $this->render('edit', [
"model" => $user
]);
}
}
<?php
namespace frontend\controllers;
use common\models\User;
use skeeks\cms\actions\LogoutAction;
use Yii;
use skeeks\module\cms\user\model\LoginForm;
use skeeks\module\cms\user\model\PasswordResetRequestForm;
use skeeks\module\cms\user\model\ResetPasswordForm;
use skeeks\module\cms\user\model\SignupForm;
use frontend\models\ContactForm;
use yii\base\InvalidParamException;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
/**
* Site controller
*/
class SiteController extends Controller
{
/**
* @inheritdoc
*/
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['logout', 'signup'],
'rules' => [
[
'actions' => ['signup'],
'allow' => true,
'roles' => ['?'],
],
[
'actions' => ['logout'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],
];
}
/**
* @inheritdoc
*/
public function actions()
{
return [
'error' => [
'class' => 'yii\web\ErrorAction',
],
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
],
'auth' => [
'class' => 'yii\authclient\AuthAction',
'successCallback' => [$this, 'successAuthclientCallback'],
],
'logout' => [
'class' => LogoutAction::className(),
],
];
}
/**
* TODO: допилить, разделить
* @param \yii\authclient\BaseClient $client
* @return bool
*/
public function successAuthclientCallback($client)
{
$attributes = $client->getUserAttributes();
//TODO: добавить обновление данных
if (!Yii::$app->getUser()->isGuest)
{
$userAuthClient = \common\models\UserAuthclient::findOne([
"user_id" => Yii::$app->user->getId(),
"provider" => $client->getId(),
"provider_identifier" => $attributes["id"],
]);
if (!$userAuthClient)
{
$userAuthClient = new \common\models\UserAuthclient([
"user_id" => Yii::$app->user->getId(),
"provider" => $client->getId(),
"provider_identifier" => $attributes["id"],
"provider_data" => serialize($attributes)
]);
$userAuthClient->save();
}
} else
{
$userAuthClient = \common\models\UserAuthclient::findOne([
"provider" => $client->getId(),
"provider_identifier" => $attributes["id"],
]);
if ($userAuthClient)
{
$user = \common\models\User::findIdentity($userAuthClient->getUserId());
if ($user)
{
return Yii::$app->user->login($user, 0);
}
}
}
}
public function actionIndex()
{
return $this->render('index');
}
public function actionLogin()
{
if (!\Yii::$app->user->isGuest) {
return $this->goHome();
}
$model = new LoginForm();
if ($model->load(Yii::$app->request->post()) && $model->login())
{
return $this->goBack();
} else {
return $this->render('login', [
'model' => $model,
]);
}
}
public function actionContact()
{
$model = new ContactForm();
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
if ($model->sendEmail(Yii::$app->params['adminEmail'])) {
Yii::$app->session->setFlash('success', 'Thank you for contacting us. We will respond to you as soon as possible.');
} else {
Yii::$app->session->setFlash('error', 'There was an error sending email.');
}
return $this->refresh();
} else {
return $this->render('contact', [
'model' => $model,
]);
}
}
public function actionAbout()
{
return $this->render('about');
}
public function actionSignup()
{
$model = new SignupForm();
if ($model->load(Yii::$app->request->post())) {
if ($user = $model->signup()) {
if (Yii::$app->getUser()->login($user)) {
return $this->goHome();
}
}
}
return $this->render('signup', [
'model' => $model,
]);
}
public function actionRequestPasswordReset()
{
$model = new PasswordResetRequestForm();
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
if ($model->sendEmail()) {
Yii::$app->getSession()->setFlash('success', 'Check your email for further instructions.');
return $this->goHome();
} else {
Yii::$app->getSession()->setFlash('error', 'Sorry, we are unable to reset password for email provided.');
}
}
return $this->render('requestPasswordResetToken', [
'model' => $model,
]);
}
public function actionResetPassword($token)
{
try {
$model = new ResetPasswordForm($token);
} catch (InvalidParamException $e) {
throw new BadRequestHttpException($e->getMessage());
}
if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
Yii::$app->getSession()->setFlash('success', 'New password was saved.');
return $this->goHome();
}
return $this->render('resetPassword', [
'model' => $model,
]);
}
}
<?php
/**
* UserController
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 23.10.2014
* @since 1.0.0
*/
namespace frontend\controllers;
use common\models\User;
use Yii;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use skeeks\cms\models\searchs\User as UserSearch;
use \skeeks\cms\App;
/**
* Site controller
*/
class UserController extends \skeeks\cms\controllers\UserController
{
}
<?php
/**
* app
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 17.10.2014
* @since 1.0.0
*/
$commonMessages = include_once \Yii::getAlias("@common/messages/ru-Ru/app.php");
return array_merge($commonMessages, [
"List of games" => "Список игр"
]);
<?php
/**
* app
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 17.10.2014
* @since 1.0.0
*/
$commonMessages = include_once \Yii::getAlias("@common/messages/ru/app.php");
return array_merge($commonMessages, [
"List of games" => "Список игр"
]);
<?php
namespace frontend\models;
use Yii;
use yii\base\Model;
/**
* ContactForm is the model behind the contact form.
*/
class ContactForm extends Model
{
public $name;
public $email;
public $subject;
public $body;
public $verifyCode;
/**
* @inheritdoc
*/
public function rules()
{
return [
// name, email, subject and body are required
[['name', 'email', 'subject', 'body'], 'required'],
// email has to be a valid email address
['email', 'email'],
// verifyCode needs to be entered correctly
['verifyCode', 'captcha'],
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'verifyCode' => 'Verification Code',
];
}
/**
* Sends an email to the specified email address using the information collected by this model.
*
* @param string $email the target email address
* @return boolean whether the email was sent
*/
public function sendEmail($email)
{
return Yii::$app->mailer->compose()
->setTo($email)
->setFrom([$this->email => $this->name])
->setSubject($this->subject)
->setTextBody($this->body)
->send();
}
}
*
!.gitignore
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*/
/* @var $this \yii\web\View */
?>
<!-- FOOTER -->
<footer class="footer">
<div class="container">
<div class="row">
<div class="col-md-3">
<div class="col">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'text-footer-left',
'text' => <<<HTML
<h4>Контакты</h4>
<ul>
<li>г . Москва, ул . Вятская д. 27 стр . 4 (м. Савеловская)</li>
<li>Телефон: <a href="tel:8 (915) 337-08-90">8 (915) 337-08-90</a></li>
<li>Email: <a href="mailto:adria@mail.ru" title="adria@mail.ru">adria@mail.ru</a></li>
<li><hr /></li>
<li><a href="/contacts" title="Все контакты" class="btn btn-primary">Все контакты + карта</a></li>
</ul>
HTML
,
]); ?>
</div>
</div>
<div class="col-md-3">
<div class="col">
<?= \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget::widget([
'namespace' => 'ContentElementsCmsWidget-footer',
'viewFile' => '@template/widgets/ContentElementsCmsWidget/articles-footer',
'label' => 'Новости и статьи',
'enabledCurrentTree'=> \skeeks\cms\components\Cms::BOOL_N,
'limit' => 4,
]); ?>
</div>
</div>
<div class="col-md-3">
<div class="col col-social-icons">
<?= \skeeks\cms\cmsWidgets\treeMenu\TreeMenuCmsWidget::widget([
'namespace' => 'menu-footer-2',
'viewFile' => '@template/widgets/TreeMenuCmsWidget/menu-footer.php',
'label' => 'Меню',
'level' => '1',
]); ?>
</div>
</div>
<div class="col-md-3">
<div class="col">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'text-footer-bout-us',
'text' => <<<HTML
<h4>О нас</h4>
<p class="no-margin">
Стоматологическая клиника «АДРИА» занимается медецинской деятельностью порядка 16 лет. За это время мы накопили колоссальный опыт, позволяющий нашим пациентам чувствовать себя спокойно и уверенно.
<br><br>
</p>
HTML
,
]); ?>
</div>
</div>
</div>
<hr>
<div class="row">
<div class="col-lg-8 copyright">
2015 © Все права защищены, АДРИА — Стоматологическая Клиника
</div>
<div class="col-lg-4">
<div class=" pull-right">
<a href="http://skeeks.com" title="Разработка сайта — SkeekS" target="_blank">Разработка сайта — SkeekS</a> (<a href="http://cms.skeeks.com" title="Система управления сайтом yii2 cms — SkeekS" target="_blank">Yii2 CMS SkeekS</a>)
</div>
</div>
</div>
</div>
</footer>
\ No newline at end of file
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*/
/* @var $this \yii\web\View */
?>
<!-- HEADER -->
<div id="divHeaderWrapper">
<header class="header-standard-2">
<!-- MAIN NAV -->
<div class="navbar navbar-wp navbar-arrow mega-nav" role="navigation">
<div class="container">
<div class="navbar-header">
<!--<button type="button" class="navbar-toggle navbar-toggle-aside-menu">
<i class="fa fa-outdent icon-custom"></i>
</button>-->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<i class="fa fa-bars icon-custom"></i>
</button>
<a class="navbar-brand" href="<?= \yii\helpers\Url::home(); ?>" title="Стоматологическая клиника АДРИА">
<img src="<?= \frontend\assets\AppAsset::getAssetUrl('img/logo.png'); ?>" alt="Стоматологическая клиника АДРИА"> АДРИА
</a>
</div>
<?= \skeeks\cms\cmsWidgets\treeMenu\TreeMenuCmsWidget::widget([
'namespace' => 'menu-top',
'viewFile' => '@app/views/widgets/TreeMenuCmsWidget/menu-top.php',
'label' => '',
'level' => '1',
'enabledRunCache'=> \skeeks\cms\components\Cms::BOOL_N,
]); ?>
</div>
</div>
</header>
</div>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 24.03.2015
*/
if (!$title)
{
if ($model)
{
$title = $model->name;
}
}
?>
<div class="pg-opt">
<div class="container">
<div class="row">
<div class="col-md-6">
<h2><?= $title; ?></h2>
</div>
<div class="col-md-6">
<?= \skeeks\cms\cmsWidgets\breadcrumbs\BreadcrumbsCmsWidget::widget([
'viewFile' => '@app/views/widgets/BreadcrumbsCmsWidget/default',
]); ?>
</div>
</div>
</div>
</div>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this \yii\web\View */
?>
<ul class="top-links list-inline pull-right">
<? if (\Yii::$app->user->isGuest) : ?>
<li><a href="<?= \skeeks\cms\helpers\UrlHelper::construct('cms/auth/login')->setCurrentRef(); ?>"><i class="fa fa-user"></i> Авторизация / Регистрация</a></li>
<? else : ?>
<li class="text-welcome hidden-xs">
Добро пожаловать, <strong><?= \Yii::$app->user->identity->displayName; ?></strong>
</li>
<li>
<a class="dropdown-toggle no-text-underline" data-toggle="dropdown" href="#"><i class="fa fa-user hidden-xs"></i> Мой аккаунт</a>
<ul class="dropdown-menu pull-right">
<li><a tabindex="-1" href="#"><i class="fa fa-history"></i> ORDER HISTORY</a></li>
<li class="divider"></li>
<li><a tabindex="-1" href="#"><i class="fa fa-bookmark"></i> MY WISHLIST</a></li>
<li><a tabindex="-1" href="#"><i class="fa fa-edit"></i> MY REVIEWS</a></li>
<li><a tabindex="-1" href="<?= \Yii::$app->user->identity->getPageUrl('edit'); ?>"><i class="fa fa-cog"></i> Настройки</a></li>
<li class="divider"></li>
<li><a href="<?= \skeeks\cms\helpers\UrlHelper::construct('cms/auth/logout')->setCurrentRef(); ?>" data-method="post"><span class="glyphicon glyphicon-off"></span> Выход</a></li>
</ul>
</li>
<? endif; ?>
</ul>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 01.10.2015
*/
use yii\helpers\Html;
use frontend\assets\AppAsset;
/* @var $this \yii\web\View */
/* @var $content string */
AppAsset::register($this);
\Yii::$app->templateBoomerang->initTheme();
?>
<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="<?= Yii::$app->language ?>">
<head>
<meta charset="<?= Yii::$app->charset ?>"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<?= Html::csrfMetaTags() ?>
<title><?= Html::encode($this->title) ?></title>
<link rel="icon" href="/favicon.ico?v=<?= @filemtime(\Yii::getAlias('@app/web/favicon.ico'));?>" type="image/x-icon" />
<?php $this->head() ?>
</head>
<body>
<?php $this->beginBody() ?>
<!-- wrapper -->
<div class="body-wrap <?= \Yii::$app->templateBoomerang->bodyCssClasses; ?>">
<?= $this->render('@app/views/header'); ?>
<?= $content; ?>
<?= $this->render('@app/views/footer'); ?>
</div>
<!-- /wrapper -->
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
\ No newline at end of file
</div>
</div>
</section>
<? \skeeks\cms\modules\admin\widgets\Pjax::end(); ?>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
/* @var $model \skeeks\cms\models\forms\LoginFormUsernameOrEmail */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
$this->title = $title;
\Yii::$app->breadcrumbs->createBase()->append($this->title);
\yii\authclient\widgets\AuthChoiceAsset::register($this);
$this->registerCss(<<<CSS
div.auth-clients
{
border-top: solid 1px #eee;
margin: 0;
padding: 0;
text-align: center;
padding-top: 10px;
}
ul.auth-clients
{
margin-bottom: 0;
padding-bottom: 0;
}
CSS
);
?>
<?= $this->render('@template/include/breadcrumbs', [
'title' => $this->title
])?>
<? \skeeks\cms\modules\admin\widgets\Pjax::begin(); ?>
<!-- -->
<section>
<div class="container">
<div class="row">
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
/* @var $model \skeeks\cms\models\forms\PasswordResetRequestFormEmailOrLogin */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
?>
<?= $this->render("_header", ['title' => 'Запрос на восстановление пароля']); ?>
<div class="col-md-6 col-md-offset-3">
<div class="box-static box-border-top padding-30">
<div class="box-title margin-bottom-30">
<h2 class="size-20">Восстановление пароля</h2>
</div>
<?php $form = ActiveForm::begin([
'validationUrl' => UrlHelper::construct('cms/auth/forget')->setSystemParam(\skeeks\cms\helpers\RequestResponse::VALIDATION_AJAX_FORM_SYSTEM_NAME)->toString()
]); ?>
<?= $form->field($model, 'identifier') ?>
<div class="form-group">
<?= Html::submitButton("Отправить", ['class' => 'btn btn-primary', 'name' => 'login-button']) ?>
</div>
<?php ActiveForm::end(); ?>
<?= Html::a('Авторизация', UrlHelper::constructCurrent()->setRoute('cms/auth/login')->toString()) ?> |
<?= Html::a('Регистрация', UrlHelper::constructCurrent()->setRoute('cms/auth/register')->toString()) ?>
</div>
</div>
<?= $this->render("_footer"); ?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
/* @var $model \skeeks\cms\models\forms\LoginFormUsernameOrEmail */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
?>
<?= $this->render("_header", ['title' => 'Авторизация']); ?>
<div class="col-md-6 col-md-offset-3">
<div class="box-static box-border-top padding-30">
<div class="box-title margin-bottom-30">
<h2 class="size-20">Авторизация</h2>
</div>
<?php $form = ActiveForm::begin([
'validationUrl' => UrlHelper::construct('cms/auth/login')->setSystemParam(\skeeks\cms\helpers\RequestResponse::VALIDATION_AJAX_FORM_SYSTEM_NAME)->toString()
]); ?>
<?= $form->field($model, 'identifier') ?>
<?= $form->field($model, 'password')->passwordInput() ?>
<?= $form->field($model, 'rememberMe')->checkbox() ?>
<div class="form-group">
<?= Html::submitButton("<i class=\"glyphicon glyphicon-off\"></i> Войти", ['class' => 'btn btn-primary', 'name' => 'login-button']) ?>
</div>
<?php ActiveForm::end(); ?>
<?= Html::a('Забыли пароль?', UrlHelper::constructCurrent()->setRoute('cms/auth/forget')->toString()) ?> |
<?= Html::a('Регистрация', UrlHelper::constructCurrent()->setRoute('cms/auth/register')->toString()) ?>
<!--Или социальные сети
--><?/*= yii\authclient\widgets\AuthChoice::widget([
'baseAuthUrl' => ['site/auth']
]) */?>
</div>
</div>
<?= $this->render("_footer"); ?>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
/* @var $model \skeeks\cms\models\forms\SignupForm */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
?>
<?= $this->render("_header", ['title' => 'Регистрация']); ?>
<div class="col-md-6 col-md-offset-3">
<div class="box-static box-border-top padding-30">
<div class="box-title margin-bottom-30">
<h2 class="size-20">Регистрация</h2>
</div>
<?php $form = ActiveForm::begin([
'validationUrl' => UrlHelper::construct('cms/auth/register')->setSystemParam(\skeeks\cms\helpers\RequestResponse::VALIDATION_AJAX_FORM_SYSTEM_NAME)->toString()
]); ?>
<?= $form->field($model, 'username') ?>
<?= $form->field($model, 'email') ?>
<?= $form->field($model, 'password')->passwordInput() ?>
<div class="form-group">
<?= Html::submitButton("<i class=\"glyphicon glyphicon-off\"></i> Зарегистрироваться", ['class' => 'btn btn-primary', 'name' => 'login-button']) ?>
</div>
<?php ActiveForm::end(); ?>
<?= Html::a('Авторизация', UrlHelper::constructCurrent()->setRoute('cms/auth/login')->toString()) ?>
</div>
</div>
<?= $this->render("_footer"); ?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
?>
<?= $this->render("_header", ['title' => 'Получение нового пароля']); ?>
<div class="col-md-6 col-md-offset-3">
<div class="box-static box-border-top padding-30">
<div class="box-title margin-bottom-30">
<h2 class="size-20"><?= $message; ?></h2>
</div>
<?= Html::a('Запросить восстановление еще раз', UrlHelper::constructCurrent()->setRoute('cms/auth/forget')->toString()) ?> |
<?= Html::a('Авторизация', UrlHelper::constructCurrent()->setRoute('cms/auth/login')->toString()) ?> |
<?= Html::a('Регистрация', UrlHelper::constructCurrent()->setRoute('cms/auth/register')->toString()) ?>
</div>
</div>
<?= $this->render("_footer"); ?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 24.05.2015
*/
/* @var $this \yii\web\View */
/* @var $model \skeeks\cms\models\CmsContentElement */
?>
<?= $this->render('@template/include/breadcrumbs', [
'model' => $model
])?>
<!-- Product page -->
<section>
<div class="container">
<div class="row">
<div class="col-md-12">
<?= $model->description_full; ?>
</div>
</div>
</div>
</section>
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*/
/* @var $this \yii\web\View */
/* @var \skeeks\cms\models\CmsContentElement $model */
?>
<?= $this->render('@template/include/breadcrumbs', [
'model' => $model
])?>
<!--=== Content Part ===-->
<section class="slice bg-white bb">
<div class="wp-section">
<div class="container">
<div class="row">
<div class="col-md-12">
<?= $model->description_full; ?>
<?/*= \skeeks\cms\cmsWidgets\treeMenu\TreeMenuCmsWidget::widget([
'namespace' => 'TreeMenuCmsWidget-sub-catalog',
'viewFile' => '@template/widgets/TreeMenuCmsWidget/sub-catalog',
'treePid' => $model->id,
'enabledRunCache' => \skeeks\cms\components\Cms::BOOL_N,
]); */?>
</div>
</div>
</div>
</div>
</section>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS ()
* @date 24.05.2015
*/
/* @var $this \yii\web\View */
/* @var $model \skeeks\cms\models\CmsContentElement */
?>
<?= $this->render("default", [
"model" => $model
]); ?>
\ No newline at end of file
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $name string */
/* @var $message string */
/* @var $exception Exception */
$this->title = $name;
?>
<section style="padding: 40px 0;">
<div class="container sx-content">
<div class="row">
<div class="col-md-12">
<h1><?= Html::encode($this->title) ?></h1>
<div class="alert alert-danger">
<?= nl2br(Html::encode($message)) ?>
</div>
</div>
</div>
</div>
</section>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*
* @var \skeeks\cms\models\CmsContentElement $model
*
*/
?>
<div class="row margin-bottom-20">
<div class="col-sm-4 sm-margin-bottom-20">
<? if ($model->image) : ?>
<img src="<?= \Yii::$app->imaging->getImagingUrl($model->image->src,
new \skeeks\cms\components\imaging\filters\Thumbnail([
'w' => 409,
'h' => 258,
])
) ?>" title="<?= $model->name; ?>" alt="<?= $model->name; ?>" class="img-responsive" />
<? else: ?>
<img src="<?= \skeeks\cms\helpers\Image::getCapSrc(); ?>" title="<?= $model->name; ?>" alt="<?= $model->name; ?>" class="img-responsive" />
<? endif; ?>
</div>
<div class="col-sm-8 news-v3">
<div class="news-v3-in-sm no-padding">
<h2>
<a href="<?= $model->url; ?>" title="<?= $model->name; ?>"><?= $model->name; ?></a>
</h2>
<ul class="list-inline posted-info">
<? if ($model->createdBy) : ?>
<li>Добавил: <a href="<?= $model->createdBy->getPageUrl(); ?>" title="<?= $model->createdBy->name; ?>"><?= $model->createdBy->name; ?></a></li>
<? endif; ?>
<? if ($model->cmsTree) : ?>
<li>Категория: <a href="<?= $model->cmsTree->url; ?>" title="<?= $model->cmsTree->name; ?>"><?= $model->cmsTree->name; ?></a></li>
<? endif; ?>
<li>Время публикации: <?= \Yii::$app->formatter->asDate($model->published_at, 'full')?></li>
<? if ($testValue = $model->relatedPropertiesModel->getAttribute('test')) : ?>
<li><?= $model->relatedPropertiesModel->getAttributeLabel('test'); ?>: <?= $testValue; ?></li>
<? endif; ?>
</ul>
<p><?= $model->description_short; ?></p>
<p><a href="<?= $model->url; ?>">Читать полностью</a></p>
</div>
</div>
</div>
<div class="clearfix margin-bottom-20"><hr></div>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.05.2015
*/
/* @var $this yii\web\View */
/* @var $widget \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget */
?>
<div class="headline"><h2><?= $widget->label; ?></h2></div>
<? echo \yii\widgets\ListView::widget([
'dataProvider' => $widget->dataProvider,
'itemView' => '_widget-item',
'emptyText' => '',
'options' =>
[
'tag' => 'ul',
'class' => 'list-unstyled link-list',
],
'itemOptions' => [
'tag' => false
],
'layout' => "\n{items}{$summary}\n<p class=\"row\">{pager}</p>"
])?>
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*/
/* @var $this \yii\web\View */
?>
<?/*= $this->render('@template/include/breadcrumbs', [
'title' => "Результаты поиска: " . \Yii::$app->cmsSearch->searchQuery
])*/?>
<section style="padding: 40px 0;">
<div class="container sx-content">
<div class="row">
<div class="col-md-12">
<? \skeeks\cms\modules\admin\widgets\Pjax::begin(); ?>
<div class="row">
<div class="col-md-12">
<form action="/search" method="get" data-pjax="true">
<div class="input-group animated fadeInDown">
<input type="text" name="<?= \Yii::$app->cmsSearch->searchQueryParamName; ?>" class="form-control" placeholder="Поиск" value="<?= \Yii::$app->cmsSearch->searchQuery; ?>">
<span class="input-group-btn">
<button class="btn btn-primary" type="button" onclick="$('.search-open form').submit(); return false;">Искать</button>
</span>
</div>
</form>
</div>
</div>
<!--=== Content Part ===-->
<div class="row">
<div class="col-md-12">
<?= \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget::widget([
'namespace' => 'ContentElementsCmsWidget-search-result',
'viewFile' => '@app/views/modules/cms/search/_widget',
'enabledCurrentTree' => \skeeks\cms\components\Cms::BOOL_N,
'dataProviderCallback' => function(\yii\data\ActiveDataProvider $dataProvider)
{
\Yii::$app->cmsSearch->buildElementsQuery($dataProvider->query);
\Yii::$app->cmsSearch->logResult($dataProvider);
},
])?>
</div>
</div>
<? \skeeks\cms\modules\admin\widgets\Pjax::end(); ?>
</div>
</div>
</div>
</section>
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS ()
* @date 06.03.2015
*/
/* @var $this \yii\web\View */
/* @var \skeeks\cms\models\Tree $model */
$catalogHelper = \common\helpers\CatalogTreeHelper::instance($model);
?>
<?= $this->render('@template/include/breadcrumbs', [
'model' => $model
])?>
<!-- Product page -->
<section>
<div class="container">
<div class="row">
<div class="col-lg-9 col-md-9 col-sm-9 col-lg-push-3 col-md-push-3 col-sm-push-3">
<div class="row">
<?= $model->description_full; ?>
<? if ($catalogHelper->viewType == \common\helpers\CatalogTreeHelper::VIEW_TREE) : ?>
<?= trim(\skeeks\cms\cmsWidgets\treeMenu\TreeMenuCmsWidget::widget([
'namespace' => 'TreeMenuCmsWidget-sub-catalog',
'viewFile' => '@template/widgets/TreeMenuCmsWidget/sub-catalog',
'treePid' => $model->id,
'enabledRunCache' => \skeeks\cms\components\Cms::BOOL_N,
])); ?>
<? else : ?>
<?= \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget::widget([
'namespace' => 'ContentElementsCmsWidget-second',
'viewFile' => '@app/views/widgets/ContentElementsCmsWidget/products',
]); ?>
<? endif; ?>
</div>
</div>
<!-- LEFT -->
<div class="col-lg-3 col-md-3 col-sm-3 col-lg-pull-9 col-md-pull-9 col-sm-pull-9">
<!-- CATEGORIES -->
<div class="side-nav margin-bottom-60">
<?= trim(\skeeks\cms\cmsWidgets\treeMenu\TreeMenuCmsWidget::widget([
'namespace' => 'TreeMenuCmsWidget-leftmenu',
'viewFile' => '@template/widgets/TreeMenuCmsWidget/left-menu',
'treePid' => $model->id,
'enabledRunCache' => \skeeks\cms\components\Cms::BOOL_N,
'label' => '',
])); ?>
</div>
<!-- /CATEGORIES -->
</div>
</div>
</div>
</section>
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 01.10.2015
*/
/* @var $this \yii\web\View */
/* @var \skeeks\cms\models\Tree $model */
$this->registerCss(<<<CSS
canvas {
width: auto !important;
/* max-width: 800px; causes panorama gmap problems */
height: auto !important;
}
CSS
);
?>
<?= $this->render('@app/views/include/breadcrumbs', [
'model' => $model
])?>
<!--=== Content Part ===-->
<section class="slice no-padding">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'contacts-map',
'text' => <<<HTML
<script type="text/javascript" charset="utf-8" src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=mKvmwnHX1m5v7UeNQZp5k34sgPxhAUeU&width=100%&height=400px&lang=ru_RU&sourceType=constructor"></script>
HTML
,
]); ?>
</section>
<section class="slice bg-white">
<div class="w-section inverse">
<div class="container">
<div class="row">
<div class="col-md-6">
<div class="section-title-wr">
<h3 class="section-title left"><span><?= $model->name; ?></span></h3>
</div>
<p>
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'contacts-text-1',
'text' => <<<HTML
Для записи на прием или для уточнения, интересующей вас информации, можете обработиться к нам, заполнив форму ниже.
HTML
,
]); ?>
</p>
<?= \skeeks\modules\cms\form2\cmsWidgets\form2\FormWidget::widget([
'form_code' => 'feedback'
]); ?>
</div>
<div class="col-md-6">
<div class="row">
<div class="col-md-6">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'contacts-text-left',
'text' => <<<HTML
<div class="section-title-wr">
<h3 class="section-title left"><span>Адрес</span></h3>
</div>
<div class="contact-info">
<h5><i class="fa fa-map-marker"></i> Адрес</h5>
<p>г . Москва, ул . Вятская д. 27 стр . 4 (м. Савеловская)</p>
<h5><i class="fa fa-envelope"></i> Email</h5>
<p><a href="mailto:adria@mail.ru" title="adria@mail.ru">adria@mail.ru</a></p>
<h5><i class="fa fa-phone"></i> Телефон</h5>
<p><a href="tel:8 (915) 337-08-90">8 (915) 337-08-90</a></p>
</div>
HTML
,
]); ?>
</div>
<div class="col-md-6">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'contacts-text-right',
'text' => <<<HTML
<div class="section-title-wr">
<h3 class="section-title left"><span>Время работы</span></h3>
</div>
<div class="contact-info">
<h5><i class="fa fa-check"></i> Понедельник — Пятница</h5>
<p>8:00 – 20:00</p>
<h5><i class="fa fa-check"></i> Суббота</h5>
<p>9:00 – 19:00</p>
<h5><i class="fa fa-times"></i> Воскресенье</h5>
<p>Выходной</p>
</div>
HTML
,
]); ?>
</div>
</div>
<!--<div class="section-title-wr">
<h3 class="section-title left"><span>Stay connected</span></h3>
</div>
<p>
Lorem ipsum dolor sit amet, consectetur acing elit. Aenean esrsel piesn qersl ioinm sersoe non urna dolor aecena.
</p>
<div class="social-media">
<a href="#"><i class="fa fa-facebook facebook"></i></a>
<a href="#"><i class="fa fa-google-plus google"></i></a>
<a href="#"><i class="fa fa-twitter twitter"></i></a>
</div>-->
</div>
</div>
</div>
</div>
</section>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (РЎРєРёРєРЎ)
* @date 24.05.2015
*/
/* @var $this \yii\web\View */
/* @var $model \skeeks\cms\models\Tree */
$this->registerJs(<<<JS
jQuery("#layerslider").layerSlider({
pauseOnHover: true,
autoPlayVideos: false,
skinsPath: 'assets/layerslider/skins/',
responsive: false,
responsiveUnder: 1280,
layersContainer: 1280,
skin: 'borderlessdark3d',
hoverPrevNext: true,
});
JS
);
?>
<!-- Optional header components (ex: slider) -->
<!-- Importing slider content -->
<section id="slider-wrapper" class="layer-slider-wrapper layer-slider-static">
<div id="layerslider" style="width: 100%; height: 600px;">
<div class="ls-slide" data-ls="transition2d:1;timeshift:-1000;">
<!-- slide background -->
<img src="<?= \frontend\assets\BoomerangThemeAsset::getAssetUrl('images/backgrounds/full-bg-19.jpg'); ?>" class="ls-bg" style="width: 100%;" alt="Slide background"/>
<!-- Left Text -->
<h3 class="ls-l title title-sm strong" style="width:500px; top:25%; left:80px;" data-ls="offsetxin:0;offsetyin:250;durationin:1000;delayin:500;offsetxout:0;offsetyout:-8;easingout:easeInOutQuart;scalexout:1.2;scaleyout:1.2;">Стоматологическая клиника АДРИА</h3>
<h3 class="ls-l subtitle strong-400" style="top:40%; left:80px;" data-ls="offsetxin:0;offsetyin:250;durationin:1000;delayin:1500;offsetxout:0;offsetyout:-8;easingout:easeInOutQuart;scalexout:1.2;scaleyout:1.2;">Недорого, качественно, удобно</h3>
<p class="ls-l text-standard" style="width:500px; top:55%; left:80px;" data-ls="offsetxin:0;offsetyin:250;durationin:1000;delayin:2500;offsetxout:0;offsetyout:-8;easingout:easeInOutQuart;scalexout:1.2;scaleyout:1.2;">
Стоматологическая клиника «АДРИА» занимается медецинской деятельностью порядка 16 лет. За это время мы накопили колоссальный опыт, позволяющий нашим пациентам чувствовать себя спокойно и уверенно.
</p>
<a href="<?= \skeeks\cms\models\Tree::find()->where(['code' => 'contacts', 'level' => 1])->one()->url; ?>" class="btn btn-base btn-lg ls-l" style="top:75%; left:80px;" data-ls="offsetxin:0;offsetyin:250;durationin:1000;delayin:3500;offsetxout:0;offsetyout:-8;easingout:easeInOutQuart;scalexout:1.2;scaleyout:1.2;" title="Откроется страница контактов, на ней можно заполнить форму записи на прием.">Записаться на прием</a>
</div>
</div>
</section>
<!-- MAIN CONTENT -->
<section class="slice base inset-shadow-1">
<div class="wp-section">
<div class="section-title-wr">
<h3 class="section-title center">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'home-title-1',
'text' => <<<HTML
<span class="c-white">О нас</span>
<small class="c-white">Адриа — Московская сертифицированная стоматологическая клиника</small>
HTML
,
]); ?>
</h3>
</div>
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'home-text-1',
'text' => <<<HTML
<p class="text-center">
Добро пожаловать в клинику Адриа ! Наша стоматологическая клиника занимается всеми видами лечения зубов, общей и косметической стоматологией, ортодонтией, имплантацией и протезированием зубов.
Диапазон наших стоматологических услуг обширен, но базируется на сохранении естественной структуры зубов, безболезненном лечении и создании непревзойденных естественных результатов в кратчайший промежуток времени. А каждый этап лечения проводится с особой тщательностью и вниманием к деталям.
</p>
<p class="text-center">
<a href="/about" title="Подробнее о нас" class="btn btn-primary">Подробнее о нас</a>
</p>
HTML
,
]); ?>
</div>
</div>
</div>
</div>
</section>
<section class="slice bg-white">
<?= \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget::widget([
'namespace' => 'ContentElementsCmsWidget-home',
'viewFile' => '@app/views/widgets/ContentElementsCmsWidget/publications',
]); ?>
</section>
<!--=== Content Part ===-->
<section class="slice no-padding">
<?= \skeeks\cms\cmsWidgets\text\TextCmsWidget::widget([
'namespace' => 'home-map',
'text' => <<<HTML
<script type="text/javascript" charset="utf-8" src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=mKvmwnHX1m5v7UeNQZp5k34sgPxhAUeU&width=100%&height=400px&lang=ru_RU&sourceType=constructor"></script>
HTML
,
]); ?>
</section>
\ No newline at end of file
<?
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 01.10.2015
*/
/* @var $this \yii\web\View */
/* @var \skeeks\cms\models\Tree $model */
?>
<?= $this->render('@template/include/breadcrumbs', [
'model' => $model
])?>
<!--=== Content Part ===-->
<section class="slice bg-white bb">
<div class="wp-section">
<div class="container">
<div class="row">
<div class="col-md-12">
<?= $model->description_full; ?>
<?= \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget::widget([
'namespace' => 'ContentElementsCmsWidget-second',
'viewFile' => '@app/views/widgets/ContentElementsCmsWidget/publications',
]); ?>
</div>
</div>
</div>
</div>
</section>
\ No newline at end of file
<?/* \skeeks\cms\modules\admin\widgets\Pjax::end(); */?>
</div>
</div>
</div>
</div>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.03.2015
*/
/* @var $this yii\web\View */
/* @var $model \common\models\User */
use yii\helpers\Html;
use skeeks\cms\base\widgets\ActiveFormAjaxSubmit as ActiveForm;
use \skeeks\cms\helpers\UrlHelper;
$this->title = $model->getDisplayName() . ' / ' . $title;
\Yii::$app->breadcrumbs->createBase()->append([
'name' => $model->displayName,
'url' => $model->getPageUrl()
]);
?>
<?= $this->render('@template/include/breadcrumbs', [
'model' => $model
])?>
<!--=== Content Part ===-->
<div class="container content profile sx-profile">
<div class="row">
<div class="col-md-3 md-margin-bottom-40">
<? if ($model->image) : ?>
<img class="img-responsive profile-img margin-bottom-20" src="<?= \skeeks\cms\helpers\Image::getSrc($model->image->src); ?>" alt="">
<? else : ?>
<img class="img-responsive profile-img margin-bottom-20" src="<?= \skeeks\cms\helpers\Image::getSrc(); ?>" alt="">
<? endif; ?>
<ul class="list-group sidebar-nav-v1 margin-bottom-40" id="sidebar-nav-1">
<li class="list-group-item <?= \Yii::$app->controller->action->id == 'view' ? "active": ""?>">
<a href="<?= $model->getPageUrl('view')?>"><i class="glyphicon glyphicon-calendar"></i> Профиль</a>
</li>
<? if (!\Yii::$app->user->isGuest && \Yii::$app->user->identity->id == $model->id) : ?>
<li class="list-group-item <?= \Yii::$app->controller->action->id == 'edit' ? "active": ""?>">
<a href="<?= $model->getPageUrl('edit')?>"><i class="fa fa-cog"></i> Настройки</a>
</li>
<li class="list-group-item">
<a href="<?= \skeeks\cms\helpers\UrlHelper::construct('cms/auth/logout')->setRef('/'); ?>" data-method="post"><i class="glyphicon glyphicon-off"></i> Выход</a>
</li>
<? endif; ?>
</ul>
</div>
<div class="col-md-9">
<div class="profile-body">
<?/* \skeeks\cms\modules\admin\widgets\Pjax::begin([
'linkSelector' => '.sx-profile a',
'blockContainer' => '.profile-body'
]); */?>
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/**
* index
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 14.10.2014
* @since 1.0.0
*/
/* @var $this yii\web\View */
/* @var $model common\models\User */
/* @var $personal bool */
$this->title = $model->getDisplayName();
?>
<?= \Yii::$app->view->render('_header', [
'model' => $model,
'personal' => $personal,
'title' => 'Управление настройками',
]); ?>
<div class="tab-v1">
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#profile">Личные данные</a></li>
<li><a data-toggle="tab" href="#passwordTab">Изменение пароля</a></li>
</ul>
<div class="tab-content">
<div id="profile" class="profile-edit tab-pane fade in active">
<? $modelForm = $model; ?>
<? $form = \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::begin([
'validationUrl' => \skeeks\cms\helpers\UrlHelper::construct('cms/user/edit-info', ['username' => $model->username])->setSystemParam(\skeeks\cms\helpers\RequestResponse::VALIDATION_AJAX_FORM_SYSTEM_NAME)->toString(),
'action' => \skeeks\cms\helpers\UrlHelper::construct('cms/user/edit-info', ['username' => $model->username])->toString(),
'afterValidateCallback' => new \yii\web\JsExpression(<<<JS
function(jForm, ajax)
{
var handler = new sx.classes.AjaxHandlerStandartRespose(ajax, {
'enableBlocker' : true,
'blockerSelector' : '#' + jForm.attr('id')
});
handler.bind('success', function(e, response)
{});
}
JS
)
]); ?>
<?= $form->field($model, 'image_id')->widget(
\skeeks\cms\widgets\formInputs\StorageImage::className()
) ?>
<?= $form->field($model, 'username')->textInput(['maxlength' => 12])->hint('Уникальное имя пользователя. Используется для авторизации, для формирования ссылки на личный кабинет.'); ?>
<?= $form->field($model, 'name')->textInput(); ?>
<?= $form->field($model, 'email')->textInput(); ?>
<?= $form->field($model, 'phone')->textInput(); ?>
<?= $form->field($model, 'gender')->radioList([
'men' => 'Муж',
'women' => 'Жен',
]); ?>
<?= $form->field($model, 'city')->textInput(); ?>
<?= $form->field($model, 'address')->textInput(); ?>
<?= $form->field($model, 'info')->textarea(); ?>
<?/*= $form->field($model, 'status_of_life')->textarea(); */?>
<button class="btn btn-primary">Сохранить</button>
<? \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::end(); ?>
</div>
<div id="passwordTab" class="profile-edit tab-pane fade">
<? $modelForm = new \skeeks\cms\models\forms\PasswordChangeForm(); ?>
<? $form = \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::begin([
'validationUrl' => \skeeks\cms\helpers\UrlHelper::construct('cms/user/change-password', ['username' => $model->username])->setSystemParam(\skeeks\cms\helpers\RequestResponse::VALIDATION_AJAX_FORM_SYSTEM_NAME)->toString(),
'action' => \skeeks\cms\helpers\UrlHelper::construct('cms/user/change-password', ['username' => $model->username])->toString()
]); ?>
<?= $form->field($modelForm, 'new_password')->passwordInput() ?>
<?= $form->field($modelForm, 'new_password_confirm')->passwordInput() ?>
<button class="btn btn-primary">Изменить</button>
<? \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::end(); ?>
</div>
<div id="settings" class="profile-edit tab-pane fade">
</div>
</div>
</div>
<?= $this->render('_footer'); ?>
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/**
* index
*
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010-2014 SkeekS (Sx)
* @date 14.10.2014
* @since 1.0.0
*/
/* @var $this yii\web\View */
/* @var $model common\models\User */
/* @var $personal bool */
$this->title = $model->getDisplayName();
\Yii::$app->breadcrumbs->createBase()->append($this->title);
/*\Yii::$app->response->redirect($model->getPageUrl('conference'));*/
?>
<?= $this->render('_header', [
'model' => $model,
'personal' => $personal,
'title' => 'Профиль',
]); ?>
<div class="profile-bio">
<div class="row">
<div class="col-md-5">
<? if ($model->image) : ?>
<img class="img-responsive md-margin-bottom-10" src="<?= \skeeks\cms\helpers\Image::getSrc($model->image->src); ?>" alt="">
<? else : ?>
<img class="img-responsive md-margin-bottom-10" src="<?= \skeeks\cms\helpers\Image::getSrc(); ?>" alt="">
<? endif; ?>
<a class="btn-u btn-u-sm" href="#">Изменить</a>
</div>
<div class="col-md-7">
<h2><?= $model->getDisplayName(); ?></h2>
<!--<span><strong>Position:</strong> Web Designer</span>-->
<hr>
<p>Зарегистрирован: <?=\Yii::$app->formatter->asDate($model->created_at, 'full'); ?> (<?=\Yii::$app->formatter->asRelativeTime($model->created_at); ?>)</p>
<p>Личная информация.</p>
</div>
</div>
</div>
<hr />
<div class="row">
<!--Social Icons v3-->
<div class="col-sm-6 sm-margin-bottom-30">
<div class="panel panel-profile">
<div class="panel-heading overflow-h">
<h2 class="panel-title heading-sm pull-left"><i class="fa fa-pencil"></i> Social Contacts <small>(option 1)</small></h2>
<a href="#"><i class="fa fa-cog pull-right"></i></a>
</div>
<div class="panel-body">
<ul class="list-unstyled social-contacts-v2">
<li><i class="rounded-x tw fa fa-twitter"></i> <a href="#">edward.rooster</a></li>
<li><i class="rounded-x fb fa fa-facebook"></i> <a href="#">Edward Rooster</a></li>
<li><i class="rounded-x sk fa fa-skype"></i> <a href="#">edwardRooster77</a></li>
<li><i class="rounded-x gp fa fa-google-plus"></i> <a href="#">rooster77edward</a></li>
<li><i class="rounded-x gm fa fa-envelope"></i> <a href="#">edward77@gmail.com</a></li>
</ul>
</div>
</div>
</div>
<!--End Social Icons v3-->
<!--Skills-->
<div class="col-sm-6 sm-margin-bottom-30">
<div class="panel panel-profile">
<div class="panel-heading overflow-h">
<h2 class="panel-title heading-sm pull-left"><i class="fa fa-lightbulb-o"></i> Skills</h2>
<a href="#"><i class="fa fa-cog pull-right"></i></a>
</div>
<div class="panel-body">
<small>HTML/CSS</small>
<small>92%</small>
<div class="progress progress-u progress-xxs">
<div style="width: 92%" aria-valuemax="100" aria-valuemin="0" aria-valuenow="92" role="progressbar" class="progress-bar progress-bar-u">
</div>
</div>
<small>Photoshop</small>
<small>77%</small>
<div class="progress progress-u progress-xxs">
<div style="width: 77%" aria-valuemax="100" aria-valuemin="0" aria-valuenow="77" role="progressbar" class="progress-bar progress-bar-u">
</div>
</div>
<small>PHP</small>
<small>85%</small>
<div class="progress progress-u progress-xxs">
<div style="width: 85%" aria-valuemax="100" aria-valuemin="0" aria-valuenow="85" role="progressbar" class="progress-bar progress-bar-u">
</div>
</div>
<small>Javascript</small>
<small>81%</small>
<div class="progress progress-u progress-xxs">
<div style="width: 81%" aria-valuemax="100" aria-valuemin="0" aria-valuenow="81" role="progressbar" class="progress-bar progress-bar-u">
</div>
</div>
</div>
</div>
</div>
<!--End Skills-->
</div>
<?= $this->render('_footer'); ?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 22.09.2015
*/
/* @var $this yii\web\View */
?>
<?= $this->render('@template/include/breadcrumbs', [
'title' => 'Корзина'
]) ?>
<?
\frontend\assets\CartAsset::register($this);
\skeeks\cms\shop\widgets\ShopGlobalWidget::widget();
$this->registerJs(<<<JS
(function(sx, $, _)
{
new sx.classes.shop.FullCart(sx.Shop, 'sx-cart-full');
})(sx, sx.$, sx._);
JS
);
?>
<!--=== Content Part ===-->
<section>
<div class="container">
<? \skeeks\cms\modules\admin\widgets\Pjax::begin([
'id' => 'sx-cart-full',
]) ?>
<? if (\Yii::$app->shop->shopFuser->isEmpty()) : ?>
<!-- EMPTY CART -->
<div class="panel panel-default">
<div class="panel-body">
<strong>Ваша корзина пуста!</strong><br />
В вашей корзине нет покупок.<br />
Кликните <a href="/" data-pjax="0">сюда</a> для продолжения покупок. <br />
<!--<span class="label label-warning">this is just an empty cart example</span>-->
</div>
</div>
<!-- /EMPTY CART -->
<? else: ?>
<ul class="process-steps nav nav-justified">
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/index']); ?>" data-pjax="0">1</a>
<h5>Корзина</h5>
</li>
<li class="">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/checkout']); ?>" data-pjax="0">2</a>
<h5>Оформление</h5>
</li>
<li class="">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/payment']); ?>" data-pjax="0">3</a>
<h5>Оплата</h5>
</li>
<li>
<a href="#">4</a>
<h5>Финиш</h5>
</li>
</ul>
<hr />
<!-- LEFT -->
<div class="col-lg-9 col-sm-8">
<!-- CART -->
<form class="cartContent clearfix" method="post" action="#">
<!-- cart content -->
<div id="cartContent">
<!-- cart header -->
<div class="item head clearfix">
<span class="cart_img"></span>
<span class="product_name size-13 bold">Товар</span>
<span class="remove_item size-13 bold"></span>
<span class="total_price size-13 bold">Всего</span>
<span class="qty size-13 bold">Количество</span>
</div>
<!-- /cart header -->
<? foreach(\Yii::$app->shop->shopFuser->shopBaskets as $shopBasket) : ?>
<!-- cart item -->
<div class="item">
<div class="cart_img pull-left width-100 padding-10 text-left">
<img src="<?= \skeeks\cms\helpers\Image::getSrc($shopBasket->product->cmsContentElement->image->src)?>" alt="" width="80" />
</div>
<a href="<?= $shopBasket->product->cmsContentElement->url; ?>" class="product_name" data-pjax="0">
<span><?= $shopBasket->product->cmsContentElement->name; ?></span>
<!--<small>Color: Brown, Size: XL</small>-->
</a>
<a href="#" class="remove_item" data-toggle="tooltip" title="" onclick="sx.Shop.removeBasket('<?= $shopBasket->id; ?>'); return false;" data-original-title="Удалить позицию"><i class="fa fa-times"></i></a>
<div class="total_price"><span><?= \Yii::$app->money->intlFormatter()->format($shopBasket->money); ?></span></div>
<div class="qty">
<input type="number" value="<?= round($shopBasket->quantity); ?>" name="qty" class="sx-basket-quantity" maxlength="3" max="999" min="1" data-basket_id="<?= $shopBasket->id; ?>"/>
&times; <?= \Yii::$app->money->intlFormatter()->format($shopBasket->productPrice->money); ?>
</div>
<div class="clearfix"></div>
</div>
<!-- /cart item -->
<? endforeach;?>
<!-- update cart -->
<button onclick="sx.Shop.clearCart(); return false;" class="btn btn-default btn-sm margin-top-20 margin-right-10 pull-left"><i class="glyphicon glyphicon-remove"></i> Очистить корзину</button>
<!-- /update cart -->
<div class="clearfix"></div>
</div>
<!-- /cart content -->
</form>
<!-- /CART -->
</div>
<!-- RIGHT -->
<div class="col-lg-3 col-sm-4">
<!-- TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle nomargin-top">
<label>Купон</label>
<div class="toggle-content" style="display: block;">
<p>Укажите код вашего купона.</p>
<form action="#" method="post" class="nomargin">
<input type="text" id="cart-code" name="cart-code" class="form-control text-center margin-bottom-10" placeholder="Код купона" required="required">
<button class="btn btn-primary btn-block" type="submit">Получить скидку</button>
</form>
</div>
</div>
</div>
<!-- /TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle active" style="display: block;">
<div class="toggle-content" style="display: block;">
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyNoDiscount); ?></span>
<strong class="pull-left">Итого:</strong>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDiscount); ?></span>
<span class="pull-left">Скидка:</span>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDelivery); ?></span>
<span class="pull-left">Доставка:</span>
</span>
<hr />
<span class="clearfix">
<span class="pull-right size-20"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->money); ?></span>
<strong class="pull-left">ИТОГ:</strong>
</span>
<hr />
<a href="<?= \yii\helpers\Url::to(['/shop/cart/checkout']); ?>" class="btn btn-primary btn-lg btn-block size-15" data-pjax="0">
<i class="fa fa-mail-forward"></i> Оформить
</a>
</div>
</div>
</div>
</div>
<? endif; ?>
<? \skeeks\cms\modules\admin\widgets\Pjax::end() ?>
</div>
</section>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 22.09.2015
*/
/* @var $this yii\web\View */
?>
<?= $this->render('@template/include/breadcrumbs', [
'title' => 'Офрмление заказа'
]) ?>
<?
\frontend\assets\CartAsset::register($this);
\skeeks\cms\shop\widgets\ShopGlobalWidget::widget();
$this->registerJs(<<<JS
(function(sx, $, _)
{
new sx.classes.shop.FullCart(sx.Shop, 'sx-cart-full');
})(sx, sx.$, sx._);
JS
);
?>
<!--=== Content Part ===-->
<section>
<div class="container">
<? \skeeks\cms\modules\admin\widgets\Pjax::begin([
'id' => 'sx-cart-full',
]) ?>
<? if (\Yii::$app->shop->shopFuser->isEmpty()) : ?>
<!-- EMPTY CART -->
<div class="panel panel-default">
<div class="panel-body">
<strong>Ваша корзина пуста!</strong><br />
В вашей корзине нет покупок.<br />
Кликните <a href="/" data-pjax="0">сюда</a> для продолжения покупок. <br />
<!--<span class="label label-warning">this is just an empty cart example</span>-->
</div>
</div>
<!-- /EMPTY CART -->
<? else: ?>
<ul class="process-steps nav nav-justified">
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart']); ?>" data-pjax="0">1</a>
<h5>Корзина</h5>
</li>
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/checkout']); ?>" data-pjax="0">2</a>
<h5>Оформление</h5>
</li>
<li class="">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/payment']); ?>" data-pjax="0">3</a>
<h5>Оплата</h5>
</li>
<li>
<a href="#">4</a>
<h5>Финиш</h5>
</li>
</ul>
<hr />
<!-- LEFT -->
<div class="col-lg-9 col-sm-8">
<!-- CART -->
<!-- cart content -->
<div id="cartContent">
<? if (\Yii::$app->user->isGuest) : ?>
<!-- EMPTY CART -->
<div class="panel panel-default">
<div class="panel-body">
<strong>Вы не авторизованы на сайте.</strong><br />
Для постоянных покупателей у нас действует система бонусов и скидок.<br />
Если у вас уже есть аккаунт, то вы можете <a href="<?= \skeeks\cms\helpers\UrlHelper::construct('cms/auth/login')->setCurrentRef(); ?>" data-pjax="0">войти на сайт</a>. <br />
<!--<span class="label label-success">this is just an empty cart example</span>-->
</div>
</div>
<!-- /EMPTY CART -->
<? endif; ?>
<? if (!\Yii::$app->shop->shopPersonTypes) : ?>
<div class="panel panel-danger">
<div class="panel-body">
<strong>Магазин не настроен.</strong><br />
В настоящий момент магазин не настроен, не найдены типы плательщиков.
</div>
</div>
<? else : ?>
<label class="control-label">Доступные профили</label>
<?= \skeeks\widget\chosen\Chosen::widget([
'name' => 'select-person-type',
'id' => 'select-person-type',
'items' => \Yii::$app->shop->shopFuser->getBuyersList(),
'value' => \Yii::$app->shop->shopFuser->buyer_id ? \Yii::$app->shop->shopFuser->buyer_id : (
\Yii::$app->shop->shopFuser->personType->id ? "shopPersonType-" . \Yii::$app->shop->shopFuser->personType->id : ""
),
'placeholder' => 'Выберите профиль покупателя',
'allowDeselect' => false,
])?>
<? if (\Yii::$app->shop->shopFuser->shopBuyers) : ?>
<small>Ранее вы уже совершали покупки в нашем магазине, и поэтому можете выбрать ранее заполненный профиль.</small>
<? endif; ?>
<? $this->registerJs(<<<JS
(function(sx, $, _)
{
sx.classes.ShopSelectPersonType = sx.classes.Component.extend({
_onDomReady: function()
{
$('#select-person-type').on("change", function()
{
sx.Shop.saveBuyer($(this).val());
sx.Shop.bind('saveBuyer', function(e, data)
{
window.location.reload();
});
});
}
});
new sx.classes.ShopSelectPersonType();
})(sx, sx.$, sx._);
JS
)?>
<? if (\Yii::$app->shop->shopFuser->personType || \Yii::$app->shop->shopFuser->buyer) : ?>
<hr />
<?= \skeeks\cms\shop\widgets\ShopPersonTypeFormWidget::widget([]) ?>
<? endif; ?>
<?/*
/**
* @var $shopPersonType \skeeks\cms\shop\models\ShopPersonType
$shopPersonType = array_shift(\Yii::$app->shop->shopPersonTypes);
*/?>
<? endif; ?>
<div class="clearfix"></div>
</div>
<!-- /cart content -->
<!-- /CART -->
</div>
<!-- RIGHT -->
<div class="col-lg-3 col-sm-4">
<!-- TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle nomargin-top">
<label>Купон</label>
<div class="toggle-content" style="display: block;">
<p>Укажите код вашего купона.</p>
<form action="#" method="post" class="nomargin">
<input type="text" id="cart-code" name="cart-code" class="form-control text-center margin-bottom-10" placeholder="Код купона" required="required">
<button class="btn btn-primary btn-block" type="submit">Получить скидку</button>
</form>
</div>
</div>
</div>
<!-- /TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle active" style="display: block;">
<div class="toggle-content" style="display: block;">
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyNoDiscount); ?></span>
<strong class="pull-left">Итого:</strong>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDiscount); ?></span>
<span class="pull-left">Скидка:</span>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDelivery); ?></span>
<span class="pull-left">Доставка:</span>
</span>
<hr />
<span class="clearfix">
<span class="pull-right size-20"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->money); ?></span>
<strong class="pull-left">ИТОГ:</strong>
</span>
<hr />
<a href="<?= \yii\helpers\Url::to(['/shop/cart/payment']); ?>" class="btn btn-primary btn-lg btn-block size-15" data-pjax="0">
<i class="fa fa-mail-forward"></i> Оформить
</a>
</div>
</div>
</div>
</div>
<? endif; ?>
<? \skeeks\cms\modules\admin\widgets\Pjax::end() ?>
</div>
</section>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 22.09.2015
*/
/* @var $this yii\web\View */
if (!\Yii::$app->shop->shopFuser->buyer)
{
\Yii::$app->response->redirect(\yii\helpers\Url::to(['/shop/cart/checkout']));
}
?>
<?= $this->render('@template/include/breadcrumbs', [
'title' => 'Выбор способа оплаты'
]) ?>
<?
\frontend\assets\CartAsset::register($this);
\skeeks\cms\shop\widgets\ShopGlobalWidget::widget();
$this->registerJs(<<<JS
(function(sx, $, _)
{
new sx.classes.shop.FullCart(sx.Shop, 'sx-cart-full');
})(sx, sx.$, sx._);
JS
);
?>
<!--=== Content Part ===-->
<section>
<div class="container">
<? \skeeks\cms\modules\admin\widgets\Pjax::begin([
'id' => 'sx-cart-full',
]) ?>
<? if (\Yii::$app->shop->shopFuser->isEmpty()) : ?>
<!-- EMPTY CART -->
<div class="panel panel-default">
<div class="panel-body">
<strong>Ваша корзина пуста!</strong><br />
В вашей корзине нет покупок.<br />
Кликните <a href="/" data-pjax="0">сюда</a> для продолжения покупок. <br />
<!--<span class="label label-warning">this is just an empty cart example</span>-->
</div>
</div>
<!-- /EMPTY CART -->
<? else: ?>
<ul class="process-steps nav nav-justified">
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart']); ?>" data-pjax="0">1</a>
<h5>Корзина</h5>
</li>
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/checkout']); ?>" data-pjax="0">2</a>
<h5>Оформление</h5>
</li>
<li class="active">
<a href="<?= \yii\helpers\Url::to(['/shop/cart/payment']); ?>" data-pjax="0">3</a>
<h5>Оплата</h5>
</li>
<li>
<a href="#">4</a>
<h5>Финиш</h5>
</li>
</ul>
<hr />
<!-- LEFT -->
<div class="col-lg-9 col-sm-8">
<!-- CART -->
<!-- cart content -->
<div id="cartContent">
<? $form = \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::begin([
'action' => \yii\helpers\Url::to(['/shop/cart/create-order']),
'enableAjaxValidation' => false,
'id' => 'shop-create-order'
]); ?>
<?= $form->field(\Yii::$app->shop->shopFuser, 'pay_system_id')->widget(
\skeeks\widget\chosen\Chosen::className(),
[
'items' => \yii\helpers\ArrayHelper::map(\Yii::$app->shop->shopFuser->paySystems, 'id', 'name'),
'placeholder' => 'Способ оплаты',
'allowDeselect' => false,
]
); ?>
<button class="btn btn-primary">Отправить</button>
<? \skeeks\cms\base\widgets\ActiveFormAjaxSubmit::end(); ?>
<div class="clearfix"></div>
</div>
<!-- /cart content -->
<!-- /CART -->
</div>
<!-- RIGHT -->
<div class="col-lg-3 col-sm-4">
<!-- TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle nomargin-top">
<label>Купон</label>
<div class="toggle-content" style="display: block;">
<p>Укажите код вашего купона.</p>
<form action="#" method="post" class="nomargin">
<input type="text" id="cart-code" name="cart-code" class="form-control text-center margin-bottom-10" placeholder="Код купона" required="required">
<button class="btn btn-primary btn-block" type="submit">Получить скидку</button>
</form>
</div>
</div>
</div>
<!-- /TOGGLE -->
<div class="toggle-transparent toggle-bordered-full clearfix">
<div class="toggle active" style="display: block;">
<div class="toggle-content" style="display: block;">
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyNoDiscount); ?></span>
<strong class="pull-left">Итого:</strong>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDiscount); ?></span>
<span class="pull-left">Скидка:</span>
</span>
<span class="clearfix">
<span class="pull-right"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->moneyDelivery); ?></span>
<span class="pull-left">Доставка:</span>
</span>
<hr />
<span class="clearfix">
<span class="pull-right size-20"><?= \Yii::$app->money->intlFormatter()->format(\Yii::$app->shop->shopFuser->money); ?></span>
<strong class="pull-left">ИТОГ:</strong>
</span>
<hr />
<?
$this->registerJs(<<<JS
sx.classes.CreateOrder = sx.classes.Component.extend({
_onDomReady: function()
{
$('#shop-create-order').submit();
}
});
JS
)
?>
<a href="#" class="btn btn-primary btn-lg btn-block size-15" onclick="<?= new \yii\web\JsExpression(<<<JS
new sx.classes.CreateOrder(); return false;
JS
)?>">
<i class="fa fa-mail-forward"></i> Оформить
</a>
</div>
</div>
</div>
</div>
<? endif; ?>
<? \skeeks\cms\modules\admin\widgets\Pjax::end() ?>
</div>
</section>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.05.2015
*/
/* @var $this yii\web\View */
/* @var $widget \skeeks\cms\cmsWidgets\breadcrumbs\BreadcrumbsCmsWidget */
?>
<? if (\Yii::$app->breadcrumbs->parts) : ?>
<? $count = count(\Yii::$app->breadcrumbs->parts); ?>
<? $counter = 0; ?>
<ol class="breadcrumb pull-right">
<? foreach (\Yii::$app->breadcrumbs->parts as $data) : ?>
<? $counter ++; ?>
<? if ($counter == $count): ?>
<li class="active"><?= $data['name']; ?></li>
<? else : ?>
<li><a href="<?= $data['url']; ?>" title="<?= $data['name']; ?>"><?= $data['name']; ?></a></li>
<? endif;?>
<? endforeach; ?>
</ol>
<? endif;?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*
* @var \skeeks\cms\models\CmsContentElement $model
*
*/
?>
<li>
<a href="<?= $model->url; ?>" title="<?= $model->name; ?>"><?= $model->name; ?></a>
<br />
<small><?= \Yii::$app->formatter->asDate($model->published_at, 'full'); ?></small>
</li>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 06.03.2015
*
* @var \skeeks\cms\models\CmsContentElement $model
*
*/
?>
<div class="row margin-bottom-20">
<? if ($model->image->src) : ?>
<div class="col-sm-4 sm-margin-bottom-20">
<img src="<?= \skeeks\cms\helpers\Image::getSrc($model->image->src); ?><?/*= \Yii::$app->imaging->getImagingUrl($model->getMainImageSrc(),
new \skeeks\cms\components\imaging\filters\Thumbnail([
'w' => 409,
'h' => 258,
])
) */?>" title="<?= $model->name; ?>" alt="<?= $model->name; ?>" class="img-responsive" />
</div>
<div class="col-sm-8 news-v3">
<? else :?>
<div class="col-sm-12 news-v3">
<? endif; ?>
<div class="news-v3-in-sm no-padding">
<h2>
<a href="<?= $model->url; ?>" title="<?= $model->name; ?>"><?= $model->name; ?></a>
</h2>
<!--<ul class="list-inline posted-info">
<?/* if ($model->createdBy) : */?>
<li>Добавил: <a href="<?/*= $model->createdBy->getPageUrl(); */?>" title="<?/*= $model->createdBy->name; */?>"><?/*= $model->createdBy->name; */?></a></li>
<?/* endif; */?>
<?/* if ($model->cmsTree) : */?>
<li>Категория: <a href="<?/*= $model->cmsTree->url; */?>" title="<?/*= $model->cmsTree->name; */?>"><?/*= $model->cmsTree->name; */?></a></li>
<?/* endif; */?>
<li>Время публикации: <?/*= \Yii::$app->formatter->asDate($model->published_at, 'full')*/?></li>
<?/* if ($testValue = $model->relatedPropertiesModel->getAttribute('test')) : */?>
<li><?/*= $model->relatedPropertiesModel->getAttributeLabel('test'); */?>: <?/*= $testValue; */?></li>
<?/* endif; */?>
</ul>-->
<div class="news-v3-in-sm-p" ><?= $model->description_short; ?></div>
<p><a href="<?= $model->url; ?>" data-pjax="0" class="btn btn-color">Подробнее</a></p>
</div>
</div>
</div>
<div class="clearfix margin-bottom-20"><hr></div>
\ No newline at end of file
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.05.2015
*/
/* @var $this yii\web\View */
/* @var $widget \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget */
?>
<!-- /Latest Blog Post -->
<h4 class="letter-spacing-1"><?= $widget->label; ?></h4>
<? echo \yii\widgets\ListView::widget([
'dataProvider' => $widget->dataProvider,
'itemView' => 'article-footer-item',
'emptyText' => '',
'options' =>
[
'tag' => 'ul',
'class' => 'footer-posts list-unstyled',
],
'itemOptions' => [
'tag' => false
],
'layout' => "{items}"
])?>
<?php
/**
* @author Semenov Alexander <semenov@skeeks.com>
* @link http://skeeks.com/
* @copyright 2010 SkeekS (СкикС)
* @date 25.05.2015
*/
/* @var $this yii\web\View */
/* @var $widget \skeeks\cms\cmsWidgets\contentElements\ContentElementsCmsWidget */
?>
<? if ($widget->enabledPjaxPagination = \skeeks\cms\components\Cms::BOOL_Y) : ?>
<? \skeeks\cms\modules\admin\widgets\Pjax::begin(); ?>
<? endif; ?>
<? echo \yii\widgets\ListView::widget([
'dataProvider' => $widget->dataProvider,
'itemView' => 'article-item',
'emptyText' => '',
'options' =>
[
'tag' => 'div',
],
'itemOptions' => [
'tag' => false
],
'layout' => "\n{items}{$summary}\n<p class=\"row\">{pager}</p>"
])?>
<? if ($widget->enabledPjaxPagination = \skeeks\cms\components\Cms::BOOL_Y) : ?>
<? \skeeks\cms\modules\admin\widgets\Pjax::end(); ?>
<? endif; ?>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
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 sign in to comment