@@ -53,7 +53,9 @@ $producer = GlobalParam::getCurrentProducer(); | |||
<header class="main-header"> | |||
<?= Html::a('<span class="logo-mini"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span><span class="logo-lg"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span>', Yii::$app->homeUrl, ['class' => 'logo']) ?> | |||
<!-- <?= Html::a('<span class="logo-mini"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span><span class="logo-lg"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span>', Yii::$app->homeUrl, ['class' => 'logo']) ?>--> | |||
<?= Html::a('Opendistrib', Yii::$app->homeUrl, ['class' => 'logo']); ?> | |||
<nav class="navbar navbar-static-top" role="navigation"> | |||
@@ -61,42 +63,87 @@ $producer = GlobalParam::getCurrentProducer(); | |||
<span class="sr-only">Toggle navigation</span> | |||
</a> | |||
<span class="producer<?php if(!$producer->logo): ?> without-logo<?php endif; ?>"> | |||
<?php if($producer->logo): ?> | |||
<span class="logo"> | |||
<img class="img-logo" | |||
src="<?= \Yii::$app->urlManagerProducer->baseUrl; ?>/uploads/<?= $producer->logo; ?>" | |||
alt="Logo <?= Html::encode($producer->name) ?>" /> | |||
</span> | |||
<?php endif; ?> | |||
<div class="title"><?= Html::encode($producer->name) ?></div> | |||
</span> | |||
<div class="navbar-custom-menu"> | |||
<?php | |||
<?php | |||
$usersArray = $userManager->queryUsersBy(['id_producer' => GlobalParam::getCurrentProducerId()]) | |||
->andWhere('CAST(FROM_UNIXTIME(user.created_at) AS date) > \'' . date("Y-m-d", strtotime("-7 days")) . '\'') | |||
->orderBy('created_at DESC') | |||
->all(); | |||
$usersArray = $userManager->queryUsersBy(['id_producer' => GlobalParam::getCurrentProducerId()]) | |||
->andWhere('CAST(FROM_UNIXTIME(user.created_at) AS date) > \'' . date("Y-m-d", strtotime("-7 days")) . '\'') | |||
->orderBy('created_at DESC') | |||
->all(); | |||
?> | |||
?> | |||
<ul class="nav navbar-nav"> | |||
<?php | |||
<?php if ($userManager->isCurrentAdmin()): ?> | |||
<li class="dropdown producer-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
<?php if ($producer->active): ?> | |||
<i class="fa fa-home"></i> | |||
<?php else: ?> | |||
<span class="label label-danger">Hors-ligne</span> | |||
<?php endif; ?> | |||
<span>Producteurs</span> | |||
<i class="fa fa-caret-down"></i> | |||
</a> | |||
<ul class="dropdown-menu"> | |||
<li class="header"> <strong>Producteurs en ligne</strong></li> | |||
<?php $producersArray = Producer::find()->orderBy('name ASC')->all(); ?> | |||
<?php foreach ($producersArray as $producer): ?> | |||
<?php if ($producer->active == 1): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/change-producer', 'id' => $producer->id]); ?>"><?= Html::encode($producer->name) ?></a> | |||
</li> | |||
<?php endif; ?> | |||
<?php endforeach; ?> | |||
<li class="header"><a href="javascript:void(0);" id="link-display-producers-offline">Afficher | |||
les producteurs hors-ligne</a></li> | |||
<?php foreach ($producersArray as $producer): ?> | |||
<?php if ($producer->active != 1): ?> | |||
<li class="offline"> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/change-producer', 'id' => $producer->id]); ?>"><?= Html::encode($producer->name) ?></a> | |||
</li> | |||
<?php endif; ?> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php endif; ?> | |||
<?php | |||
$pastDistributionsArray = Distribution::find() | |||
->where(['<', 'distribution.date', date('Y-m-d')]) | |||
->andWhere([ | |||
'distribution.id_producer' => GlobalParam::getCurrentProducerId(), | |||
'distribution.active' => 1 | |||
]) | |||
->orderBy('date DESC') | |||
->limit(3) | |||
->all(); | |||
$pastDistributionsArray = Distribution::find() | |||
->where(['<', 'distribution.date', date('Y-m-d')]) | |||
->andWhere([ | |||
'distribution.id_producer' => GlobalParam::getCurrentProducerId(), | |||
'distribution.active' => 1 | |||
]) | |||
->orderBy('date DESC') | |||
->limit(3) | |||
->all(); | |||
$pastDistributionsArray = array_reverse($pastDistributionsArray); | |||
$pastDistributionsArray = array_reverse($pastDistributionsArray); | |||
$incomingDistributionsArray = Distribution::find() | |||
->where(['>=', 'distribution.date', date('Y-m-d')]) | |||
->andWhere([ | |||
'distribution.id_producer' => GlobalParam::getCurrentProducerId(), | |||
'distribution.active' => 1 | |||
]) | |||
->orderBy('date ASC') | |||
->limit(20) | |||
->all(); | |||
?> | |||
$incomingDistributionsArray = Distribution::find() | |||
->where(['>=', 'distribution.date', date('Y-m-d')]) | |||
->andWhere([ | |||
'distribution.id_producer' => GlobalParam::getCurrentProducerId(), | |||
'distribution.active' => 1 | |||
]) | |||
->orderBy('date ASC') | |||
->limit(20) | |||
->all(); | |||
?> | |||
<li class="dropdown distributions-menu notifications-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
@@ -104,172 +151,130 @@ $producer = GlobalParam::getCurrentProducer(); | |||
</a> | |||
<ul class="dropdown-menu"> | |||
<?php if (count($pastDistributionsArray)): ?> | |||
<li class="header">3 dernières distributions :</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($pastDistributionsArray as $distribution): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index', 'date' => $distribution->date]); ?>"> | |||
<h5><?= strftime('%A %d %B', strtotime($distribution->date)) ?></h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php endif; ?> | |||
<?php if (count($pastDistributionsArray)): ?> | |||
<li class="header">3 dernières distributions :</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($pastDistributionsArray as $distribution): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index', 'date' => $distribution->date]); ?>"> | |||
<h5><?= strftime('%A %d %B', strtotime($distribution->date)) ?></h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php endif; ?> | |||
<?php if (count($incomingDistributionsArray)): ?> | |||
<li class="header">Prochaines distributions :</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($incomingDistributionsArray as $distribution): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index', 'date' => $distribution->date]); ?>"> | |||
<h5><?= strftime('%A %d %B', strtotime($distribution->date)) ?></h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header"> | |||
Aucune distribution prévue.<br/> | |||
<a class="btn btn-default" | |||
href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index']); ?>">Gérer | |||
mes distributions</a> | |||
</li> | |||
<?php endif; ?> | |||
<?php if (count($incomingDistributionsArray)): ?> | |||
<li class="header">Prochaines distributions :</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($incomingDistributionsArray as $distribution): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index', 'date' => $distribution->date]); ?>"> | |||
<h5><?= strftime('%A %d %B', strtotime($distribution->date)) ?></h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header"> | |||
Aucune distribution prévue.<br/> | |||
<a class="btn btn-default" | |||
href="<?= Yii::$app->urlManagerBackend->createUrl(['distribution/index']); ?>">Gérer | |||
mes distributions</a> | |||
</li> | |||
<?php endif; ?> | |||
</ul> | |||
</li> | |||
<li class="dropdown users-menu notifications-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
<i class="fa fa-user-plus"></i> | |||
<?php if (count($usersArray)): ?><span | |||
class="label label-success"><?= count($usersArray) ?></span> | |||
<?php else: ?><span class="label label-warning">0</span><?php endif; ?> | |||
<?php if (count($usersArray)): ?><span | |||
class="label label-success"><?= count($usersArray) ?></span> | |||
<?php else: ?><span class="label label-warning">0</span><?php endif; ?> | |||
</a> | |||
<ul class="dropdown-menu"> | |||
<?php if (count($usersArray)): ?> | |||
<li class="header">Inscriptions des 7 derniers jours</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($usersArray as $user): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['user/update', 'id' => $user['user_id']]); ?>"> | |||
<h5><?= Html::encode((isset($user['name_legal_person']) && strlen($user['name_legal_person'])) ? $user['name_legal_person'] : $user['name'] . ' ' . $user['lastname']); ?> | |||
<small> | |||
<i class="fa fa-clock-o"></i> <?= date('d/m/Y à H:i', $user['created_at']); ?> | |||
</small> | |||
</h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header">Aucun nouvel inscrit ces 7 derniers jours.</li> | |||
<?php endif; ?> | |||
<?php if (count($usersArray)): ?> | |||
<li class="header">Inscriptions des 7 derniers jours</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($usersArray as $user): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['user/update', 'id' => $user['user_id']]); ?>"> | |||
<h5><?= Html::encode((isset($user['name_legal_person']) && strlen($user['name_legal_person'])) ? $user['name_legal_person'] : $user['name'] . ' ' . $user['lastname']); ?> | |||
<small> | |||
<i class="fa fa-clock-o"></i> <?= date('d/m/Y à H:i', $user['created_at']); ?> | |||
</small> | |||
</h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header">Aucun nouvel inscrit ces 7 derniers jours.</li> | |||
<?php endif; ?> | |||
</ul> | |||
</li> | |||
<?php | |||
<?php | |||
$usersNegativeCreditArray = $userManager->queryUsersBy(['id_producer' => GlobalParam::getCurrentProducerId()]) | |||
->andWhere('user_producer.credit < 0') | |||
->orderBy('lastname, name ASC') | |||
->all(); | |||
$usersNegativeCreditArray = $userManager->queryUsersBy(['id_producer' => GlobalParam::getCurrentProducerId()]) | |||
->andWhere('user_producer.credit < 0') | |||
->orderBy('lastname, name ASC') | |||
->all(); | |||
?> | |||
?> | |||
<li class="dropdown users-negative-credit-menu notifications-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
<i class="fa fa-euro"></i> | |||
<?php if (count($usersNegativeCreditArray)): ?><span | |||
class="label label-warning"><?= count($usersNegativeCreditArray) ?></span> | |||
<?php else: ?><span class="label label-success">0</span><?php endif; ?> | |||
<?php if (count($usersNegativeCreditArray)): ?><span | |||
class="label label-warning"><?= count($usersNegativeCreditArray) ?></span> | |||
<?php else: ?><span class="label label-success">0</span><?php endif; ?> | |||
</a> | |||
<ul class="dropdown-menu"> | |||
<?php if (count($usersNegativeCreditArray)): ?> | |||
<li class="header">Utilisateurs au crédit négatif</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($usersNegativeCreditArray as $user): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['user/credit', 'id' => $user['user_id']]); ?>"> | |||
<h5><?= $userManager->getUsernameFromArray($user); ?> | |||
<small> | |||
<i class="fa fa-euro"></i> <?= Price::format($user['credit']); ?> | |||
</small> | |||
</h5> | |||
</a> | |||
</li> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header">Aucun de vos utilisateurs n'a de crédit négatif.</li> | |||
<?php endif; ?> | |||
</ul> | |||
</li> | |||
<?php if ( $userManager->isCurrentProducer() || $userManager->isCurrentAdmin()): ?> | |||
<li class="dropdown producer-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
<?php if ($producer->active): ?> | |||
<i class="fa fa-home"></i> | |||
<?php else: ?> | |||
<span class="label label-danger">Hors-ligne</span> | |||
<?php endif; ?> | |||
<span><?= Html::encode($producerManager->getNameProducer(Yii::$app->user->identity)); ?></span> | |||
<i class="fa fa-caret-down"></i> | |||
</a> | |||
<ul class="dropdown-menu"> | |||
<?php if ( $userManager->isCurrentAdmin()): ?> | |||
<?php if (count($usersNegativeCreditArray)): ?> | |||
<li class="header">Utilisateurs au crédit négatif</li> | |||
<li> | |||
<ul class="menu"> | |||
<?php foreach ($usersNegativeCreditArray as $user): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerProducer->createAbsoluteUrl(['site/index', 'slug_producer' => GlobalParam::getCurrentProducer()->slug]); ?>"> | |||
<i class="fa fa-th-large"></i> | |||
<span class="hidden-xs">Espace du producteur</span> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['user/credit', 'id' => $user['user_id']]); ?>"> | |||
<h5><?= $userManager->getUsernameFromArray($user); ?> | |||
<small> | |||
<i class="fa fa-euro"></i> <?= Price::format($user['credit']); ?> | |||
</small> | |||
</h5> | |||
</a> | |||
</li> | |||
<li class="header"> <strong>Producteurs en ligne</strong></li> | |||
<?php $producersArray = Producer::find()->orderBy('name ASC')->all(); ?> | |||
<?php foreach ($producersArray as $producer): ?> | |||
<?php if($producer->active == 1): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/change-producer', 'id' => $producer->id]); ?>"><?= Html::encode($producer->name) ?></a> | |||
</li> | |||
<?php endif; ?> | |||
<?php endforeach; ?> | |||
<li class="header"><a href="javascript:void(0);" id="link-display-producers-offline">Afficher les producteurs hors-ligne</a></li> | |||
<?php foreach ($producersArray as $producer): ?> | |||
<?php if($producer->active != 1): ?> | |||
<li class="offline"> | |||
<a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/change-producer', 'id' => $producer->id]); ?>"><?= Html::encode($producer->name) ?></a> | |||
</li> | |||
<?php endif; ?> | |||
<?php endforeach; ?> | |||
<?php else: ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerProducer->createAbsoluteUrl(['site/index', 'slug_producer' => GlobalParam::getCurrentProducer()->slug]); ?>"> | |||
<i class="fa fa-th-large"></i> | |||
<span class="hidden-xs">Mon espace</span> | |||
</a> | |||
</li> | |||
<?php endif; ?> | |||
</ul> | |||
</li> | |||
<?php endif; ?> | |||
<?php endforeach; ?> | |||
</ul> | |||
</li> | |||
<?php else: ?> | |||
<li class="header">Aucun de vos utilisateurs n'a de crédit négatif.</li> | |||
<?php endif; ?> | |||
</ul> | |||
</li> | |||
<?php if ($userManager->isCurrentProducer() || $userManager->isCurrentAdmin()): ?> | |||
<li> | |||
<a href="<?= Yii::$app->urlManagerProducer->createAbsoluteUrl(['site/index', 'slug_producer' => GlobalParam::getCurrentProducer()->slug]); ?>"> | |||
<span class="glyphicon glyphicon-grain"></span> | |||
<span class="hidden-xs">Espace producteur</span> | |||
</a> | |||
</li> | |||
<?php endif; ?> | |||
<li class="dropdown user user-menu"> | |||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | |||
<i class="fa fa-user"></i> | |||
<span class="hidden-xs"><?= Html::encode( GlobalParam::getCurrentUser()->name . ' ' . GlobalParam::getCurrentUser()->lastname); ?></span> | |||
<span class="hidden-xs"><?= Html::encode(GlobalParam::getCurrentUser()->name . ' ' . GlobalParam::getCurrentUser()->lastname); ?></span> | |||
<i class="fa fa-caret-down"></i> | |||
</a> | |||
<ul class="dropdown-menu"> |
@@ -37,18 +37,18 @@ | |||
*/ | |||
use common\helpers\GlobalParam; | |||
use yii\helpers\Html; | |||
$producerManager = $this->getProducerManager(); | |||
$userManager = $this->getUserManager(); | |||
$producer = GlobalParam::getCurrentProducer(); | |||
?> | |||
<aside class="main-sidebar"> | |||
<section class="sidebar"> | |||
<?php | |||
$producer = GlobalParam::getCurrentProducer(); | |||
$newVersionOpendistribTemplate = ''; | |||
if($producer && !$producerManager->isUpToDateWithOpendistribVersion($producer)) { | |||
$newVersionOpendistribTemplate = '<span class="pull-right-container"><small class="label pull-right bg-orange"> </small></span>'; |
@@ -1523,145 +1523,202 @@ a.btn.btn-primary .glyphicon-triangle-bottom, button.btn.btn-primary .glyphicon- | |||
/* line 4, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo { | |||
background-color: white; | |||
font-family: 'highvoltageregular'; | |||
font-size: 23px; | |||
} | |||
/* line 6, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo:hover { | |||
/* line 9, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo:hover, body.skin-black .main-header .logo:focus { | |||
background-color: white; | |||
text-decoration: none; | |||
} | |||
/* line 10, ../sass/_adminlte.scss */ | |||
/* line 14, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo .logo-lg img { | |||
width: 30px; | |||
height: 30px; | |||
} | |||
/* line 16, ../sass/_adminlte.scss */ | |||
/* line 20, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo .logo-mini img { | |||
width: 30px; | |||
height: 30px; | |||
} | |||
/* line 22, ../sass/_adminlte.scss */ | |||
/* line 26, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar { | |||
background-color: white; | |||
} | |||
/* line 24, ../sass/_adminlte.scss */ | |||
/* line 29, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .producer { | |||
float: left; | |||
padding: 15px; | |||
padding-left: 57px; | |||
} | |||
/* line 34, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .producer.without-logo { | |||
padding-left: 10px; | |||
} | |||
/* line 38, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .producer .logo { | |||
position: absolute; | |||
top: 5px; | |||
left: 50px; | |||
background-color: white; | |||
width: 40px; | |||
height: 40px; | |||
-moz-border-radius: 50px; | |||
-webkit-border-radius: 50px; | |||
border-radius: 50px; | |||
border: solid 1px #e0e0e0; | |||
text-align: center; | |||
overflow: hidden; | |||
} | |||
/* line 50, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .producer .logo .img-logo { | |||
position: absolute; | |||
top: 50%; | |||
left: 50%; | |||
transform: translate(-50%, -50%); | |||
max-width: 35px; | |||
max-height: 35px; | |||
} | |||
/* line 60, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .producer .title { | |||
position: relative; | |||
top: 2px; | |||
text-transform: uppercase; | |||
} | |||
/* line 67, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .sidebar-toggle { | |||
color: #333; | |||
} | |||
/* line 28, ../sass/_adminlte.scss */ | |||
/* line 71, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .navbar-custom-menu .navbar-nav > li > a, | |||
body.skin-black .main-header .navbar .navbar-right > li > a { | |||
border-left: solid 1px #e0e0e0; | |||
color: #333; | |||
} | |||
/* line 34, ../sass/_adminlte.scss */ | |||
/* line 77, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .nav > li > a:hover, body.skin-black .main-header .navbar .nav > li > a:active, body.skin-black .main-header .navbar .nav > li > a:focus, | |||
body.skin-black .main-header .navbar .nav .open > a, body.skin-black .main-header .navbar .nav .open > a:hover, body.skin-black .main-header .navbar .nav .open > a:focus, | |||
body.skin-black .main-header .navbar .nav > .active > a { | |||
color: #FF7F00; | |||
} | |||
/* line 40, ../sass/_adminlte.scss */ | |||
/* line 83, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .dropdown-menu { | |||
-moz-box-shadow: 0px 0px 4px gray; | |||
-webkit-box-shadow: 0px 0px 4px gray; | |||
box-shadow: 0px 0px 4px gray; | |||
} | |||
/* line 45, ../sass/_adminlte.scss */ | |||
/* line 88, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .logo, body.skin-black .main-header .navbar .sidebar-toggle { | |||
border-right: solid 1px #e0e0e0; | |||
} | |||
/* line 49, ../sass/_adminlte.scss */ | |||
/* line 92, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .link-control-sidebar { | |||
display: none; | |||
} | |||
/* line 54, ../sass/_adminlte.scss */ | |||
/* line 97, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .notifications-menu ul.menu { | |||
max-height: 300px; | |||
} | |||
/* line 57, ../sass/_adminlte.scss */ | |||
/* line 100, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .notifications-menu ul.menu li a { | |||
padding-top: 4px; | |||
padding-bottom: 4px; | |||
} | |||
/* line 61, ../sass/_adminlte.scss */ | |||
/* line 104, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .notifications-menu ul.menu li a h5 { | |||
margin-bottom: 2px; | |||
} | |||
/* line 64, ../sass/_adminlte.scss */ | |||
/* line 107, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .notifications-menu ul.menu li a h5 small { | |||
float: right; | |||
} | |||
/* line 69, ../sass/_adminlte.scss */ | |||
/* line 112, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .notifications-menu ul.menu li a p { | |||
margin-left: 10px; | |||
} | |||
/* line 79, ../sass/_adminlte.scss */ | |||
/* line 122, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .nav li.producer-menu .label { | |||
position: relative; | |||
top: -2px; | |||
left: 0px; | |||
} | |||
/* line 85, ../sass/_adminlte.scss */ | |||
/* line 128, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .nav li.producer-menu #link-display-producers-offline { | |||
color: #FF7F00; | |||
} | |||
/* line 89, ../sass/_adminlte.scss */ | |||
/* line 132, ../sass/_adminlte.scss */ | |||
body.skin-black .main-header .navbar .nav li.producer-menu .offline { | |||
display: none; | |||
} | |||
/* line 95, ../sass/_adminlte.scss */ | |||
/* line 138, ../sass/_adminlte.scss */ | |||
body.skin-black .sidebar-menu > li.active > a { | |||
border-color: #FF7F00; | |||
} | |||
/* line 99, ../sass/_adminlte.scss */ | |||
/* line 143, ../sass/_adminlte.scss */ | |||
body.skin-black section.sidebar .user-panel { | |||
text-align: center; | |||
} | |||
/* line 146, ../sass/_adminlte.scss */ | |||
body.skin-black section.sidebar .user-panel .image { | |||
margin-bottom: 3px; | |||
} | |||
/* line 150, ../sass/_adminlte.scss */ | |||
body.skin-black section.sidebar .user-panel .title { | |||
font-weight: bold; | |||
color: white; | |||
} | |||
/* line 157, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper { | |||
background-color: #f5f5f5; | |||
} | |||
/* line 102, ../sass/_adminlte.scss */ | |||
/* line 160, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .content-header { | |||
background-color: #F5F5F5; | |||
padding-bottom: 15px; | |||
border-bottom: solid 1px #e0e0e0; | |||
border-top: solid 1px #e0e0e0; | |||
} | |||
/* line 108, ../sass/_adminlte.scss */ | |||
/* line 166, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .content-header .btn { | |||
padding: 3px 6px; | |||
font-size: 10px; | |||
font-family: Arial; | |||
text-transform: uppercase; | |||
} | |||
/* line 115, ../sass/_adminlte.scss */ | |||
/* line 173, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .content-header h1 { | |||
font-family: "highvoltageregular"; | |||
font-family: 'myriadpro-light'; | |||
font-size: 20px; | |||
} | |||
/* line 122, ../sass/_adminlte.scss */ | |||
/* line 178, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper a { | |||
color: #FF7F00; | |||
} | |||
/* line 126, ../sass/_adminlte.scss */ | |||
/* line 182, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .btn { | |||
color: white; | |||
} | |||
/* line 130, ../sass/_adminlte.scss */ | |||
/* line 186, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .btn-default { | |||
color: #333; | |||
background-color: white; | |||
} | |||
/* line 135, ../sass/_adminlte.scss */ | |||
/* line 191, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .btn-primary { | |||
background-color: #FF7F00; | |||
color: white; | |||
border-color: #FF7F00; | |||
} | |||
/* line 142, ../sass/_adminlte.scss */ | |||
/* line 198, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .alert a { | |||
color: white; | |||
} | |||
/* line 145, ../sass/_adminlte.scss */ | |||
/* line 201, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .alert a.btn { | |||
color: #333; | |||
text-decoration: none; | |||
} | |||
/* line 150, ../sass/_adminlte.scss */ | |||
/* line 206, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .alert .close { | |||
font-size: 30px; | |||
position: relative; | |||
@@ -1670,89 +1727,89 @@ body.skin-black .content-wrapper .alert .close { | |||
color: white; | |||
opacity: 0.6; | |||
} | |||
/* line 158, ../sass/_adminlte.scss */ | |||
/* line 214, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .alert .close:hover { | |||
opacity: 1; | |||
} | |||
/* line 165, ../sass/_adminlte.scss */ | |||
/* line 221, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .callout h4 .fa { | |||
margin-right: 7px; | |||
} | |||
/* line 168, ../sass/_adminlte.scss */ | |||
/* line 224, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .callout a { | |||
color: white; | |||
} | |||
/* line 171, ../sass/_adminlte.scss */ | |||
/* line 227, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .callout .btn { | |||
color: #333; | |||
text-decoration: none; | |||
} | |||
/* line 178, ../sass/_adminlte.scss */ | |||
/* line 234, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .table th { | |||
font-size: 13px; | |||
} | |||
/* line 181, ../sass/_adminlte.scss */ | |||
/* line 237, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .table th.column-actions, body.skin-black .content-wrapper .table td.column-actions { | |||
width: 150px; | |||
text-align: right; | |||
} | |||
/* line 185, ../sass/_adminlte.scss */ | |||
/* line 241, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .table td.text-small, body.skin-black .content-wrapper .table th.text-small { | |||
font-size: 12px; | |||
} | |||
/* line 190, ../sass/_adminlte.scss */ | |||
/* line 246, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .pagination > .active > a, body.skin-black .content-wrapper .pagination > .active > span, body.skin-black .content-wrapper .pagination > .active > a:hover, body.skin-black .content-wrapper .pagination > .active > span:hover, body.skin-black .content-wrapper .pagination > .active > a:focus, body.skin-black .content-wrapper .pagination > .active > span:focus { | |||
background-color: #FF7F00; | |||
border: solid 1px #FF7F00; | |||
color: white; | |||
} | |||
/* line 195, ../sass/_adminlte.scss */ | |||
/* line 251, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .pagination > li > a, body.skin-black .content-wrapper .pagination > li > span { | |||
color: #FF7F00; | |||
} | |||
/* line 197, ../sass/_adminlte.scss */ | |||
/* line 253, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .pagination > li > a:hover, body.skin-black .content-wrapper .pagination > li > span:hover { | |||
color: #cc6600; | |||
} | |||
/* line 202, ../sass/_adminlte.scss */ | |||
/* line 258, ../sass/_adminlte.scss */ | |||
body.skin-black .content-wrapper .submenu { | |||
margin-bottom: 25px; | |||
} | |||
/* line 208, ../sass/_adminlte.scss */ | |||
/* line 264, ../sass/_adminlte.scss */ | |||
body.skin-black .main-footer a { | |||
color: #FF7F00; | |||
} | |||
/* line 214, ../sass/_adminlte.scss */ | |||
/* line 270, ../sass/_adminlte.scss */ | |||
body.login-page { | |||
background: none; | |||
background-color: white; | |||
} | |||
/* line 218, ../sass/_adminlte.scss */ | |||
/* line 274, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-logo { | |||
text-align: center; | |||
font-family: "comfortaalight"; | |||
} | |||
/* line 221, ../sass/_adminlte.scss */ | |||
/* line 277, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-logo img { | |||
width: 50px; | |||
} | |||
/* line 226, ../sass/_adminlte.scss */ | |||
/* line 282, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-box-body .btn-primary { | |||
background-color: #FF7F00; | |||
border-color: #FF7F00; | |||
padding: 5px 10px; | |||
} | |||
/* line 231, ../sass/_adminlte.scss */ | |||
/* line 287, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-box-body .btn-primary:active { | |||
background-color: #ff8c1a; | |||
border-color: #FF7F00; | |||
} | |||
/* line 237, ../sass/_adminlte.scss */ | |||
/* line 293, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-box-body a { | |||
color: #FF7F00; | |||
} | |||
/* line 239, ../sass/_adminlte.scss */ | |||
/* line 295, ../sass/_adminlte.scss */ | |||
body.login-page .login-box .login-box-body a:hover { | |||
color: #ff8c1a; | |||
} | |||
@@ -2616,80 +2673,88 @@ pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||
termes. | |||
*/ | |||
@media screen and (max-width: 768px) { | |||
/* line 41, ../sass/_responsive.scss */ | |||
/* line 42, ../sass/_responsive.scss */ | |||
.main-header .logo { | |||
color: #333 !important; | |||
} | |||
/* line 46, ../sass/_responsive.scss */ | |||
.main-header .navbar { | |||
border-top: solid 1px #e0e0e0; | |||
border-bottom: solid 1px #e0e0e0; | |||
} | |||
/* line 50, ../sass/_responsive.scss */ | |||
.main-header .navbar .producer { | |||
display: none; | |||
} | |||
/* line 49, ../sass/_responsive.scss */ | |||
/* line 58, ../sass/_responsive.scss */ | |||
.navbar-custom-menu .producer-menu span { | |||
display: none; | |||
} | |||
/* line 56, ../sass/_responsive.scss */ | |||
/* line 65, ../sass/_responsive.scss */ | |||
.table .column-hide-on-mobile { | |||
display: none; | |||
} | |||
/* line 67, ../sass/_responsive.scss */ | |||
/* line 76, ../sass/_responsive.scss */ | |||
.distribution-index .modal-form-order .modal-container .modal-body table.table-products td.quantity .form-control { | |||
width: 50px; | |||
height: 52px; | |||
} | |||
/* line 73, ../sass/_responsive.scss */ | |||
/* line 82, ../sass/_responsive.scss */ | |||
.distribution-index .modal-form-order .modal-container .modal-body table.table-products td.price { | |||
display: none; | |||
} | |||
/* line 81, ../sass/_responsive.scss */ | |||
/* line 90, ../sass/_responsive.scss */ | |||
.distribution-index .modal-form-order .modal-container .modal-footer .actions-form div.right { | |||
display: none; | |||
} | |||
/* line 92, ../sass/_responsive.scss */ | |||
/* line 101, ../sass/_responsive.scss */ | |||
.distribution-index #orders #buttons-top-orders .left { | |||
width: 100%; | |||
float: none; | |||
} | |||
/* line 97, ../sass/_responsive.scss */ | |||
/* line 106, ../sass/_responsive.scss */ | |||
.distribution-index #orders #buttons-top-orders .right { | |||
width: 100%; | |||
float: none; | |||
} | |||
/* line 102, ../sass/_responsive.scss */ | |||
/* line 111, ../sass/_responsive.scss */ | |||
.distribution-index #orders #buttons-top-orders .btn { | |||
padding: 8px 15px; | |||
margin: 10px; | |||
display: block; | |||
width: 100%; | |||
} | |||
/* line 112, ../sass/_responsive.scss */ | |||
/* line 121, ../sass/_responsive.scss */ | |||
.distribution-index #orders #wrapper-nav-points-sale ul#nav-points-sale li { | |||
float: none; | |||
width: 100%; | |||
} | |||
/* line 116, ../sass/_responsive.scss */ | |||
/* line 125, ../sass/_responsive.scss */ | |||
.distribution-index #orders #wrapper-nav-points-sale ul#nav-points-sale li a { | |||
display: block; | |||
} | |||
/* line 125, ../sass/_responsive.scss */ | |||
/* line 134, ../sass/_responsive.scss */ | |||
.distribution-index #orders table .state-payment-mobile { | |||
display: block; | |||
} | |||
/* line 128, ../sass/_responsive.scss */ | |||
/* line 137, ../sass/_responsive.scss */ | |||
.distribution-index #orders table .state-payment-mobile .glyphicon-time { | |||
display: none; | |||
} | |||
/* line 134, ../sass/_responsive.scss */ | |||
/* line 143, ../sass/_responsive.scss */ | |||
.distribution-index #orders table ul.dropdown-menu a { | |||
padding: 15px; | |||
} | |||
/* line 139, ../sass/_responsive.scss */ | |||
/* line 148, ../sass/_responsive.scss */ | |||
.distribution-index #orders table button.dropdown-toggle, | |||
.distribution-index #orders table button.btn-moins, | |||
.distribution-index #orders table button.btn-plus { | |||
padding: 15px; | |||
} | |||
/* line 146, ../sass/_responsive.scss */ | |||
/* line 155, ../sass/_responsive.scss */ | |||
.distribution-index #orders table .column-origin, | |||
.distribution-index #orders table .column-point-sale, | |||
.distribution-index #orders table .column-state-payment, |
@@ -3,8 +3,12 @@ body.skin-black { | |||
.main-header { | |||
.logo { | |||
background-color: white ; | |||
&:hover { | |||
font-family: 'highvoltageregular'; | |||
font-size: 23px; | |||
&:hover, &:focus { | |||
background-color: white ; | |||
text-decoration: none; | |||
} | |||
.logo-lg { | |||
img { | |||
@@ -21,6 +25,45 @@ body.skin-black { | |||
} | |||
.navbar { | |||
background-color: white ; | |||
.producer { | |||
float: left; | |||
padding: 15px; | |||
padding-left: 57px; | |||
&.without-logo { | |||
padding-left: 10px; | |||
} | |||
.logo { | |||
position: absolute; | |||
top: 5px; | |||
left: 50px; | |||
background-color: white; | |||
width: 40px; | |||
height: 40px; | |||
@include border-radius(50px); | |||
border: solid 1px #e0e0e0; | |||
text-align: center; | |||
overflow: hidden; | |||
.img-logo { | |||
position: absolute; | |||
top: 50%; | |||
left: 50%; | |||
transform: translate(-50%, -50%); | |||
max-width: 35px; | |||
max-height: 35px; | |||
} | |||
} | |||
.title { | |||
position: relative; | |||
top: 2px; | |||
text-transform: uppercase; | |||
} | |||
} | |||
.sidebar-toggle { | |||
color: #333 ; | |||
} | |||
@@ -95,6 +138,21 @@ body.skin-black { | |||
.sidebar-menu > li.active > a { | |||
border-color: $color1 ; | |||
} | |||
section.sidebar { | |||
.user-panel { | |||
text-align: center; | |||
.image { | |||
margin-bottom: 3px; | |||
} | |||
.title { | |||
font-weight: bold; | |||
color: white; | |||
} | |||
} | |||
} | |||
.content-wrapper { | |||
background-color: #f5f5f5 ; | |||
@@ -113,12 +171,10 @@ body.skin-black { | |||
} | |||
h1 { | |||
font-family: 'highvoltageregular' ; | |||
font-family: 'myriadpro-light'; | |||
font-size: 20px; | |||
} | |||
} | |||
a { | |||
color: $color1 ; | |||
} |
@@ -38,9 +38,18 @@ termes. | |||
@media screen and (max-width: 768px) { | |||
.main-header { | |||
.logo { | |||
color: #333 !important; | |||
} | |||
.navbar { | |||
border-top: solid 1px #e0e0e0; | |||
border-bottom: solid 1px #e0e0e0; | |||
.producer { | |||
display: none; | |||
} | |||
} | |||
} | |||
@@ -37,6 +37,7 @@ | |||
*/ | |||
use common\helpers\GlobalParam; | |||
use common\logic\User\User\Wrapper\UserManager; | |||
use yii\helpers\Html; | |||
use yii\bootstrap\Nav; | |||
use common\helpers\Url; | |||
@@ -45,13 +46,14 @@ use common\logic\Producer\Producer\Model\Producer; | |||
/* @var $this \yii\web\View */ | |||
/* @var $content string */ | |||
$userManager = UserManager::getInstance(); | |||
$isHome = (Yii::$app->controller->id == 'site' && \Yii::$app->controller->action->id == 'index'); | |||
\common\assets\CommonAsset::register($this); | |||
\frontend\assets\AppAsset::register($this); | |||
$producer = null; | |||
if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
if ($userManager->isCurrentProducer()) { | |||
$producer = Producer::searchOne(['id' => \Yii::$app->user->identity->id_producer]); | |||
} | |||
@@ -78,21 +80,72 @@ if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
<body class="<?php if ($isHome): echo 'home'; endif; ?><?php if (!Yii::$app->user->isGuest): ?> connected<?php endif; ?>"> | |||
<?php $this->beginBody() ?> | |||
<div id="back"></div> | |||
<?php if (YII_ENV == 'demo'): ?> | |||
<div id="block-demo"> | |||
<section id="section-user-top"> | |||
<nav class="navbar navbar-inverse"> | |||
<div class="container"> | |||
<span class="glyphicon glyphicon-eye-open"></span> <strong>Espace de démonstration</strong> : | |||
Testez la plateforme sans avoir à vous inscrire. Les données sont réinitialisées quotidiennement | |||
• <?= Html::a('Retour', Url::env('prod', 'frontend')) ?> | |||
<?php if($userManager->isCurrentProducer()): ?> | |||
<div class="navbar-header"> | |||
<span class="navbar-brand" href="javascript:void(0);"><?= Html::encode($producer->name); ?></span> | |||
</div> | |||
<?php endif; ?> | |||
<?php | |||
echo Nav::widget([ | |||
'encodeLabels' => false, | |||
'options' => ['class' => 'nav nav-pills navbar-nav navbar-right'], | |||
'items' => [ | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-cog"></span> Administration', | |||
'url' => $this->getUrlManagerBackend()->createAbsoluteUrl(['site/index']), | |||
'visible' => $userManager->isCurrentProducer() | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-grain"></span> Espace producteur', | |||
'url' => $this->getUrlManagerProducer()->createAbsoluteUrl(['site/index', 'slug_producer' => $producer ? $producer->slug : '']), | |||
'visible' => $userManager->isCurrentProducer() | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> ' . ((!Yii::$app->user->isGuest) ? Html::encode(Yii::$app->user->identity->name . ' ' . strtoupper(substr(Yii::$app->user->identity->lastname, 0, 1))) : '') . '. ', | |||
'options' => ['id' => 'label1'], | |||
'url' => '#', | |||
'items' => [ | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> Profil', | |||
'url' => $this->getUrlManager()->createUrl(['user/update']), | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-off"></span> Déconnexion', | |||
'url' => $this->getUrlManager()->createUrl(['site/logout']), | |||
] | |||
], | |||
'visible' => !Yii::$app->user->isGuest | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-log-in"></span> Connexion', | |||
'url' => $this->getUrlManager()->createUrl(['site/login']), | |||
'visible' => \Yii::$app->user->isGuest, | |||
'active' => $this->getControllerAction() == 'site/login' | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> Inscription', | |||
'url' => $this->getUrlManager()->createUrl(['site/signup']), | |||
'visible' => \Yii::$app->user->isGuest, | |||
'active' => $this->getControllerAction() == 'site/signup' | |||
], | |||
]]); | |||
?> | |||
</div> | |||
</div> | |||
<?php endif; ?> | |||
</nav> | |||
</section> | |||
<header id="header"> | |||
<nav class="navbar navbar-default"> | |||
<div id="the-header" class="container"> | |||
<div class="navbar-header"> | |||
<a id="link-home" href="<?= $this->getUrlManager()->createUrl('site/index'); ?>"> | |||
<img src="<?php echo $this->getUrlManager()->getBaseUrl(); ?>/img/logo-distrib.png" alt=""/> | |||
<!--<img src="<?php echo $this->getUrlManager()->getBaseUrl(); ?>/img/logo-distrib.png" alt=""/>--> | |||
Open<span>distrib</span> | |||
</a> | |||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#w0-collapse"><span | |||
class="sr-only">Toggle navigation</span> | |||
@@ -108,7 +161,7 @@ if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
'options' => ['class' => 'nav nav-pills navbar-nav navbar-right'], | |||
'items' => [ | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-home"></span> Accueil', | |||
'label' => '<span class="glyphicon glyphicon-home"></span> Présentation', | |||
'url' => $this->getUrlManager()->createUrl(['site/index']), | |||
'active' => $this->getControllerAction() == 'site/index', | |||
'options' => ['id' => 'li-home'] | |||
@@ -120,10 +173,10 @@ if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
'options' => ['id' => 'li-producteurs'] | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-eur"></span> Tarifs', | |||
'url' => $this->getUrlManager()->createUrl(['site/prices']), | |||
'active' => $this->getControllerAction() == 'site/prices', | |||
'options' => ['id' => 'li-producteurs'] | |||
'label' => '<span class="glyphicon glyphicon-info-sign"></span> À propos', | |||
'url' => $this->getUrlManager()->createUrl(['site/about']), | |||
'active' => $this->getControllerAction() == 'site/about', | |||
'options' => ['id' => 'li-about'] | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-envelope"></span> Contact', | |||
@@ -131,49 +184,6 @@ if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
'active' => $this->getControllerAction() == 'site/contact', | |||
'options' => ['id' => 'li-contact'] | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-flag"></span> ' . ($producer ? Html::encode($producer->name) : ''), | |||
'url' => '#', | |||
'items' => [ | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-th-large"></span> Mon espace', | |||
'url' => $this->getUrlManagerProducer()->createAbsoluteUrl(['site/index', 'slug_producer' => $producer ? $producer->slug : '']), | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-cog"></span> Administration', | |||
'url' => $this->getUrlManagerBackend()->createAbsoluteUrl(['site/index']), | |||
] | |||
], | |||
'visible' => !Yii::$app->user->isGuest && $producer | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-log-in"></span> Connexion', | |||
'url' => $this->getUrlManager()->createUrl(['site/login']), | |||
'visible' => \Yii::$app->user->isGuest, | |||
'active' => $this->getControllerAction() == 'site/login' | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> Inscription', | |||
'url' => $this->getUrlManager()->createUrl(['site/signup']), | |||
'visible' => \Yii::$app->user->isGuest, | |||
'active' => $this->getControllerAction() == 'site/signup' | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> ' . ((!Yii::$app->user->isGuest) ? Html::encode(Yii::$app->user->identity->name . ' ' . strtoupper(substr(Yii::$app->user->identity->lastname, 0, 1))) : '') . '. ', | |||
'options' => ['id' => 'label1'], | |||
'url' => '#', | |||
'items' => [ | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-user"></span> Profil', | |||
'url' => $this->getUrlManager()->createUrl(['user/update']), | |||
], | |||
[ | |||
'label' => '<span class="glyphicon glyphicon-off"></span> Déconnexion', | |||
'url' => $this->getUrlManager()->createUrl(['site/logout']), | |||
] | |||
], | |||
'visible' => !Yii::$app->user->isGuest | |||
], | |||
] | |||
]); | |||
?> | |||
@@ -182,7 +192,7 @@ if (!Yii::$app->user->isGuest && \Yii::$app->user->identity->id_producer > 0) { | |||
</nav> | |||
</header> | |||
<?php if (!Yii::$app->user->isGuest): ?> | |||
<?php if (!Yii::$app->user->isGuest && false): ?> | |||
<section id="bookmarked-producers"> | |||
<div class="container"> | |||
<?php |
@@ -43,7 +43,8 @@ use yii\grid\GridView; | |||
<div class="alert alert-warning" role="alert"> | |||
Découvrez ci-dessous notre <strong>grille tarifaire</strong> pour l'hébergement de votre circuit court sur Opendistrib. | |||
Le montant qui vous est facturé mensuellement dépend de votre chiffre d’affaire hors taxe réalisé sur le logiciel. | |||
Il sera donc adapté chaque mois en fonction de l’évolution de votre activité. | |||
Il est donc adapté chaque mois en fonction de l’évolution de votre activité.<br /> | |||
Le service est <strong>sans engagement</strong>, vous arrêtez quand vous voulez sur simple désactivation de votre compte. | |||
</div> | |||
<?= | |||
@@ -79,7 +80,25 @@ GridView::widget([ | |||
] | |||
]); | |||
?> | |||
<?php if (!isset($noButton)){ ?> | |||
<a class="btn btn-default" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/prices']) ?>"><span class="glyphicon glyphicon-eur"></span> En savoir plus sur nos tarifs</a> | |||
<?php } ?> | |||
<table class="table table-striped table-bordered"> | |||
<thead> | |||
<tr> | |||
<th>Module</th> | |||
<th>Activation du module (HT)</th> | |||
</tr> | |||
</thead> | |||
<tbody> | |||
<tr> | |||
<td> | |||
<strong>Paiement en ligne</strong><br /> | |||
<p>Le paiement en ligne permet à vos clients d'alimenter leur crédit (compte prépayé en ligne) par carte bancaire.<br /> | |||
Le logiciel fonctionne avec la plateforme <a href="https://stripe.com/fr">Stripe</a> pour accepter les paiements.<br /> | |||
<a href="https://stripe.com/fr/pricing">Voir les tarifs Stripe</a> | |||
</p> | |||
</td> | |||
<td>120 €</td> | |||
</tr> | |||
</tbody> | |||
</table> | |||
@@ -1,70 +1,78 @@ | |||
<?php | |||
/** | |||
Copyright distrib (2018) | |||
* Copyright distrib (2018) | |||
* | |||
* contact@opendistrib.net | |||
* | |||
* Ce logiciel est un programme informatique servant à aider les producteurs | |||
* à distribuer leur production en circuits courts. | |||
* | |||
* Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||
* respectant les principes de diffusion des logiciels libres. Vous pouvez | |||
* utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||
* de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||
* sur le site "http://www.cecill.info". | |||
* | |||
* En contrepartie de l'accessibilité au code source et des droits de copie, | |||
* de modification et de redistribution accordés par cette licence, il n'est | |||
* offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||
* seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||
* titulaire des droits patrimoniaux et les concédants successifs. | |||
* | |||
* A cet égard l'attention de l'utilisateur est attirée sur les risques | |||
* associés au chargement, à l'utilisation, à la modification et/ou au | |||
* développement et à la reproduction du logiciel par l'utilisateur étant | |||
* donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||
* manipuler et qui le réserve donc à des développeurs et des professionnels | |||
* avertis possédant des connaissances informatiques approfondies. Les | |||
* utilisateurs sont donc invités à charger et tester l'adéquation du | |||
* logiciel à leurs besoins dans des conditions permettant d'assurer la | |||
* sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||
* à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||
* | |||
* Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||
* pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||
* termes. | |||
*/ | |||
contact@opendistrib.net | |||
use common\helpers\Url; | |||
Ce logiciel est un programme informatique servant à aider les producteurs | |||
à distribuer leur production en circuits courts. | |||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||
sur le site "http://www.cecill.info". | |||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||
de modification et de redistribution accordés par cette licence, il n'est | |||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||
titulaire des droits patrimoniaux et les concédants successifs. | |||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||
associés au chargement, à l'utilisation, à la modification et/ou au | |||
développement et à la reproduction du logiciel par l'utilisateur étant | |||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||
avertis possédant des connaissances informatiques approfondies. Les | |||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||
termes. | |||
*/ | |||
use common\helpers\Url ; | |||
$this->setTitle('Logiciel libre de distribution alimentaire en circuit court') ; | |||
$this->setMeta('description', 'Simplifiez la distribution de vos produits en circuit court grâce à des outils web adaptés.') ; | |||
$this->setTitle('Logiciel de distribution alimentaire en circuit court'); | |||
$this->setMeta('description', 'Simplifiez la distribution de vos produits en circuit court grâce à des outils web adaptés.'); | |||
?> | |||
<div id="presentation"> | |||
<div id="presentation-distrib"> | |||
<h1><span>Logiciel libre<br /> | |||
de distribution alimentaire<br /> | |||
en circuit court</span></h1> | |||
<p>simple, ouvert et participatif</p> | |||
<h1><strong>Opendistrib</strong>, logiciel<br/> | |||
de distribution alimentaire<br/> | |||
en circuit court</h1> | |||
</div> | |||
<div id="row-users-producers"> | |||
<div class="col-md-6 producer"> | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<img class="img" src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/cagette.png" id="img-producer" /> | |||
<img class="img" src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/cagette.png" | |||
id="img-producer"/> | |||
<span class="the-title">Producteurs</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p class="presentation">Simplifiez la distribution de vos produits<br /> avec des outils adaptés.</p> | |||
<?php if(Yii::$app->user->isGuest): ?> | |||
<a class="btn btn-primary" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/signup']) ; ?>"><span class="glyphicon glyphicon-user"></span> Je crée mon espace</a> | |||
<p class="presentation">Simplifiez la distribution de vos produits en circuit court<br/> avec des | |||
outils adaptés à la vente en pré-commande.</p> | |||
<?php if (Yii::$app->user->isGuest): ?> | |||
<a class="btn btn-primary" | |||
href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/signup']); ?>"> | |||
<span class="glyphicon glyphicon-user"></span> Je crée mon espace | |||
</a> | |||
<?php endif; ?> | |||
<a class="btn btn-default" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/contact']) ; ?>"><span class="glyphicon glyphicon-info-sign"></span> Demande d'informations</a> | |||
<a class="btn btn-default" href="<?= \Yii::$app->params['appointmentUrl']; ?>" target="_blank"> | |||
<span class="glyphicon glyphicon-education"></span> Je demande une démo | |||
</a> | |||
<!--<a class="btn btn-default" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/contact']); ?>"><span class="glyphicon glyphicon-info-sign"></span> Demande d'informations</a>--> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -72,26 +80,32 @@ $this->setMeta('description', 'Simplifiez la distribution de vos produits en cir | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<img class="img" src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/users.png" id="img-users" /> | |||
<img class="img" src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/users.png" | |||
id="img-users"/> | |||
<span class="the-title">Clients</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p class="presentation">Réservez vos produits en ligne et récupérez votre commande | |||
chez votre producteur ou dans un dépôt près de chez vous.</p> | |||
<?php if(Yii::$app->user->isGuest): ?> | |||
<a class="btn btn-primary" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/signup']) ; ?>"><span class="glyphicon glyphicon-user"></span> Je m'inscris</a> | |||
<p class="presentation">Réservez facilement vos produits en ligne et récupérez votre commande | |||
chez votre producteur ou dans un point de vente près de chez vous.</p> | |||
<?php if (Yii::$app->user->isGuest): ?> | |||
<a class="btn btn-primary" | |||
href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/signup']); ?>"><span | |||
class="glyphicon glyphicon-user"></span> Je m'inscris</a> | |||
<?php endif; ?> | |||
<a class="btn btn-default" href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/producers']) ; ?>"><span class="glyphicon glyphicon-search"></span> Je recherche un producteur</a> | |||
<a class="btn btn-default" | |||
href="<?= \Yii::$app->urlManagerFrontend->createUrl(['site/producers']); ?>"><span | |||
class="glyphicon glyphicon-search"></span> Je recherche un producteur</a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="clr"></div> | |||
</div> | |||
<?php if(Yii::$app->user->isGuest && YII_ENV == 'demo'): ?> | |||
<div class="row" id="row-signup"> | |||
<a class="btn btn-primary btn-lg" href="<?= Url::env('prod','frontend'); ?>"><span class="glyphicon glyphicon-circle-arrow-left"></span> Retour sur le site</a> | |||
</div> | |||
<?php if (Yii::$app->user->isGuest && YII_ENV == 'demo'): ?> | |||
<div class="row" id="row-signup"> | |||
<a class="btn btn-primary btn-lg" href="<?= Url::env('prod', 'frontend'); ?>"><span | |||
class="glyphicon glyphicon-circle-arrow-left"></span> Retour sur le site</a> | |||
</div> | |||
<?php endif; ?> | |||
<div id="row-functionalities-rates"> | |||
@@ -103,39 +117,86 @@ $this->setMeta('description', 'Simplifiez la distribution de vos produits en cir | |||
</div> | |||
<div class="panel-body"> | |||
<div class="block block-order col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/order.png" /> | |||
<p>Prise de commande en ligne automatisée avec génération d'un récapitulatif par jour de distribution.</p> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/order.png"/> | |||
<p>Prise de commande en ligne automatisée avec génération d'un récapitulatif par jour de | |||
distribution.</p> | |||
<div class="clr"></div> | |||
</div> | |||
<div class="block block-payment col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/payment.png" /> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/payment.png"/> | |||
<p>Système de crédit permettant la comptabilisation des paiements.</p> | |||
<div class="clr"></div> | |||
</div> | |||
<div class="clr"></div> | |||
<div class="block block-points-sale-products col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/map-marker.png" /> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/map-marker.png"/> | |||
<p>Gestion des différents points de vente et produits.</p> | |||
<div class="clr"></div> | |||
</div> | |||
<div class="block block-subscriptions col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/subscription.png" /> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/subscription.png"/> | |||
<p>Gestion des abonnement.</p> | |||
<div class="clr"></div> | |||
</div> | |||
<div class="clr"></div> | |||
<div class="block block-communication col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/megaphone.png" /> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/megaphone.png"/> | |||
<p>Communication simplifiée avec les clients.</p> | |||
<div class="clr"></div> | |||
</div> | |||
<div class="block block-evolution col-md-6"> | |||
<img src="<?= \Yii::$app->urlManager->getBaseUrl(); ?>/img/idea.png" /> | |||
<p><a href="<?= \Yii::$app->urlManager->createUrl(['site/contact']) ?>">Proposez-nous</a> vos idées afin de faire évoluer l'outil !</p> | |||
<div class="clr"></div> | |||
</div> | |||
</div> | |||
<div class="panel panel-default" id="block-services"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<span class="glyphicon glyphicon-euro"></span> <span class="the-title">Services</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<div class="col-md-6"> | |||
<div class="panel panel-default"> | |||
<div class="panel-body"> | |||
<h3>Évolutions régulières</h3> | |||
<p>Les évolutions sont développées en fonction des retours de tous les producteurs et le logiciel est régulièrement mis à jour.<br /> | |||
Si vous avez un besoin spécifique à votre activité, nous pouvons réaliser des développements sur-mesure sur devis : | |||
<a href="<?= \Yii::$app->urlManager->createUrl(['site/contact']) ?>">nous contacter</a>.</p> | |||
</div> | |||
</div> | |||
<div class="panel panel-default"> | |||
<div class="panel-body"> | |||
<h3>Formation & accompagnement</h3> | |||
<p>Au moment du lancement de votre circuit court sur Opendistrib, ainsi que tout au long de votre projet, | |||
nous assurons la formation et l'accompagnement dans l'utilisation du logiciel.</p> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="col-md-6"> | |||
<div class="panel panel-default"> | |||
<div class="panel-body"> | |||
<h3>Support</h3> | |||
<p>Nous sommes disponibles pour répondre rapidement à toutes vos questions par email ou par téléphone.</p> | |||
</div> | |||
</div> | |||
<div class="panel panel-default"> | |||
<div class="panel-body"> | |||
<h3>Maintenance</h3> | |||
<p>Nous travaillons contamment sur la qualité/sécurité du logiciel et | |||
intervenons au plus vite en cas de bug.</p> | |||
</div> | |||
</div> | |||
<div class="panel panel-default"> | |||
<div class="panel-body"> | |||
<h3>Hébergement</h3> | |||
<p>La plateforme est hébergée en France par la société <a href="https://www.alwaysdata.com/">Alwaysdata</a>.</p> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="panel panel-default" id="block-rates"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> |
@@ -59,12 +59,11 @@ $this->setMeta('description', 'Découvrez les tarifs de l\application Opendistri | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p>Vous avez accès à toutes les fonctionnalités d’Opendistrib quelque soit votre tranche tarifaire (hormis le paiement en ligne). | |||
Ce tarif prend également en compte les mises à jour du logiciel. Les fonctionnalités sont développées en | |||
fonction de vos retours et besoins. | |||
<p>Hormis le paiement en ligne, vous avez accès à toutes les fonctionnalités d’Opendistrib quelque soit votre tranche tarifaire. | |||
Les évolutions sont développées en fonction des retours de tous les producteurs. | |||
</p> | |||
<p>Pour vos besoins spécifiques, nous pouvons réaliser des développements sur-mesure sur devis | |||
(<a href="<?= \Yii::$app->urlManager->createUrl(['site/contact']) ?>">nous contacter</a>).</p> | |||
<p>Si vous avez un besoin spécifique à votre activité, nous pouvons réaliser des développements sur-mesure sur devis : | |||
<a href="<?= \Yii::$app->urlManager->createUrl(['site/contact']) ?>">nous contacter</a>.</p> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -72,13 +71,17 @@ $this->setMeta('description', 'Découvrez les tarifs de l\application Opendistri | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<span class="the-title">Support & maintenance</span> | |||
<span class="the-title">Support, maintenance & hébergement</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p>Le service comprend l’hébergement, le support et la maintenance. Nous sommes | |||
disponibles pour répondre à vos questions, vous accompagner à l’utilisation du logiciel et corriger | |||
les problèmes que vous ou vos clients pouvez rencontrer.</p> | |||
<p>Le service comprend :</p> | |||
<ul> | |||
<li><strong>Le support</strong> : nous sommes disponibles pour répondre rapidement à toutes vos questions par email ou par téléphone.</li> | |||
<li><strong>La maintenance</strong> : nous travaillons contamment sur la qualité/sécurité du logiciel et | |||
intervenons immédiatement en cas de bug.</li> | |||
<li><strong>L'hébergement</strong> : la plateforme est hébergée en France par la société <a href="https://www.alwaysdata.com/">Alwaysdata</a>.</li> | |||
</ul> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -96,7 +99,7 @@ $this->setMeta('description', 'Découvrez les tarifs de l\application Opendistri | |||
<p>Vous avez plusieurs solutions pour découvrir le logiciel : </p> | |||
<ul> | |||
<li> | |||
<a href="<?= \Yii::$app->urlManager->createUrl(['site/contact']) ?>">Nous demander une démo</a> pour | |||
<a href="<?= \Yii::$app->params['appointmentUrl']; ?>" target="_blank">Nous demander une démo</a> pour | |||
que l'on vous fasse une présentation. | |||
</li> | |||
<li> | |||
@@ -117,44 +120,11 @@ $this->setMeta('description', 'Découvrez les tarifs de l\application Opendistri | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p>Si besoin, au moment du lancement de votre circuit court sur Opendistrib, nous pouvons vous proposer | |||
des temps de formation et d'accompagnement au tarif de <strong>40 € HT / heure</strong>. | |||
</p> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="row equal"> | |||
<div class="col-md-6 col-xs-12 producer"> | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<span class="the-title">Paiement en ligne</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body"> | |||
<p>Le paiement en ligne permet à vos clients d'alimenter leur crédit (compte prépayé en ligne) par carte bancaire. | |||
Le logiciel fonctionne avec la plateforme <a href="https://stripe.com/fr">Stripe</a> pour accepter les paiements.</p> | |||
<p> | |||
Activation de l'option : <strong>120 € HT</strong><br /> | |||
<a href="https://stripe.com/fr/pricing">Voir les tarifs Stripe</a> | |||
<p>Au moment du lancement de votre circuit court sur Opendistrib, ainsi que tout au long de votre projet, | |||
la formation et l'accompagnement sont compris dans l'abonnement mensuel.</p> | |||
</p> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="col-md-6 col-xs-12 producer"> | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h2 class="panel-title"> | |||
<span class="the-title">Durée d'engagement</span> | |||
</h2> | |||
</div> | |||
<div class="panel-body "> | |||
<p>Ce service est sans engagement de durée. Si vous souhaitez arrêter, vous aurez simplement à le configurer dans vos | |||
paramètres en mettant hors-ligne votre compte.</p> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> |