Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 24becf66c3 | |||
| 43d0852075 | |||
| 81c548bd00 |
@@ -131,7 +131,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
{% if answers|length == 0 %}
|
||||
{% if spontaneous|length == 0 %}
|
||||
<tr><th colspan="3" class="text-center">Aucune candidature pour le moment</th></tr>
|
||||
{% endif %}
|
||||
</tbody>
|
||||
|
||||
@@ -50,13 +50,229 @@
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
document.location.href="/entreprise/me/profil";
|
||||
document.location.href = "/entreprise/me/profil";
|
||||
</script>
|
||||
{# {{ render("/entreprise/me/profil") }} #}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% include 'company/ad_table_listing.html.twig' with {'ads':ads} %}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- START JUMBOTRON -->
|
||||
<div class="jumbotron" data-pages="parallax">
|
||||
<div class=" container-fluid container-fixed-lg sm-p-l-0 sm-p-r-0">
|
||||
<div class="inner">
|
||||
<!-- START BREADCRUMB -->
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="/entreprise/me/">Accueil</a></li>
|
||||
</ol>
|
||||
<!-- END BREADCRUMB -->
|
||||
<div class="row">
|
||||
<div class="col-xl-12 col-lg-12 ">
|
||||
<!-- START card -->
|
||||
<div class="card card-transparent">
|
||||
<div class="card-header ">
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<a class="btn-square" target="_self" href="{{ path('company_ad_create') }}">
|
||||
<button aria-label=""
|
||||
class="btn btn-primary btn-cons">{{ 'ad.company.add.label'|trans }}</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END card -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END JUMBOTRON -->
|
||||
|
||||
|
||||
|
||||
<!-- START CONTAINER FLUID -->
|
||||
<!-- START CONTAINER FLUID -->
|
||||
<div class=" container-fluid container-fixed-lg bg-white">
|
||||
<!-- START card -->
|
||||
<div class="card card-transparent">
|
||||
<div class="card-header ">
|
||||
<div class="card-title">Statistiques</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12 col-xl-12 col-xlg-12">
|
||||
<div class="col-md-12 m-b-10" style="display:flex;">
|
||||
<!-- Nombre de candidatures vidéo - START WIDGET D3 widget_graphTileFlat-->
|
||||
<div class="widget-8 card m-r-15 widget-loader-bar card-header card-background-1">
|
||||
<div class="container-xs-height">
|
||||
<!--full-height-->
|
||||
<div class="">
|
||||
<!--row-xs-height -->
|
||||
<div class="col-xs-height col-top">
|
||||
<div class="">
|
||||
<!--card-header top-left top-right -->
|
||||
<div class="card-title text-card">
|
||||
<span class="font-montserrat fs-11 all-caps">Nombre total de
|
||||
candidats</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-xs-height">
|
||||
<div class="col-xs-height col-top relative">
|
||||
<div class="row full-height">
|
||||
<div class="col-sm-12 text-card">
|
||||
<h3 class="bold no-margin p-b-5 text-card"><a class="bold no-margin p-b-5 text-card" href="{{ path('company_answer_list') }}">{{nbAnswersSended}}</a></h3>
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<div
|
||||
class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">Nouveaux candidats</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin"><a class="bold no-margin" href="{{ path('company_answer_list') }}">+{{nbAnswersSended}}</a></h4>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="col-sm-5">
|
||||
<div class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">30 derniers jours</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin" style="opacity:0.75">+48</h4>
|
||||
</div>
|
||||
</div>-->
|
||||
</div>
|
||||
<!--<div class="widget-8-chart line-chart" data-line-color="white" data-points="true" data-point-color="warning" data-stroke-width="2">
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END WIDGET -->
|
||||
<!-- Nombre de visite page entreprise vidéo - START WIDGET D3 widget_graphTileFlat-->
|
||||
<div class="widget-8 card m-r-15 widget-loader-bar card-header card-background-2">
|
||||
<div class="container-xs-height">
|
||||
<div class="">
|
||||
<!--row-xs-height -->
|
||||
<div class="col-xs-height col-top">
|
||||
<div class="">
|
||||
<!--card-header top-left top-right -->
|
||||
<div class="card-title text-card">
|
||||
<span class="font-montserrat fs-11 all-caps">Visites de la page
|
||||
entreprise</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-xs-height">
|
||||
<div class="col-xs-height col-top relative">
|
||||
<div class="row full-height">
|
||||
<div class="col-sm-12 text-card">
|
||||
<h3 class="bold no-margin p-b-5 text-card">{{ records.totalRecordsCompany }}</h3>
|
||||
</div>
|
||||
<div class="col-sm-5 vertical-border">
|
||||
<div
|
||||
class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">7 derniers jours</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin">+{{ records7days.totalRecordsCompany }}</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-5">
|
||||
<div
|
||||
class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">30 derniers jours</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin" style="opacity:0.75">+{{ records30days.totalRecordsCompany }}</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="widget-8-chart line-chart" data-line-color="white" data-points="true" data-point-color="warning" data-stroke-width="2">
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END WIDGET -->
|
||||
|
||||
<!-- Nombre de visites global offres d'emploi --START WIDGET D3 widget_graphTileFlat-->
|
||||
<div class="widget-8 card no-margin widget-loader-bar card-header card-background-3">
|
||||
<div class="container-xs-height">
|
||||
<div class="">
|
||||
<!--row-xs-height -->
|
||||
<div class="col-xs-height col-top">
|
||||
<div class="">
|
||||
<!--card-header top-left top-right -->
|
||||
<div class="card-title text-card">
|
||||
<span class="font-montserrat fs-11 all-caps">Vues globales des offres
|
||||
d’emploi</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row-xs-height">
|
||||
<div class="col-xs-height col-top relative">
|
||||
<div class="row full-height">
|
||||
<div class="col-sm-12 text-card">
|
||||
<h3 class="bold no-margin p-b-5 text-card">{{ records.totalRecords-records.totalRecordsCompany }}</h3>
|
||||
</div>
|
||||
<div class="col-sm-5 vertical-border">
|
||||
<div
|
||||
class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">7 derniers jours</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin">+{{ records7days.totalRecords-records7days.totalRecordsCompany }}</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-5">
|
||||
<div
|
||||
class="p-l-0 full-height d-flex flex-column justify-content-between text-card">
|
||||
<p class="small m-t-5 m-b-0">
|
||||
<span class="fs-12 ">30 derniers jours</span>
|
||||
</p>
|
||||
<h4 class="bold no-margin" style="opacity:0.75">+{{ records30days.totalRecords-records30days.totalRecordsCompany }}</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="widget-8-chart line-chart" data-line-color="white" data-points="true" data-point-color="warning" data-stroke-width="2">
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END WIDGET -->
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!--class="col-lg-8 sm-p-b-10 md-p-b-10"-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<!-- END card -->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
@@ -65,178 +281,192 @@
|
||||
{# <script src="{{ asset('/js/vendors/Chart.bundle.min.js') }}"></script> #}
|
||||
<script type="text/javascript">
|
||||
var currentMonth = '{{ "now"|date("m") }}';
|
||||
var arrayRecords;
|
||||
{# var ctx, myChart, arrayCurrentsLabel, arrayCurrentsAdsValues, arrayCurrentsCompanyValues, donughtRecords; #}
|
||||
var arrayRecords; {
|
||||
#
|
||||
var ctx, myChart, arrayCurrentsLabel, arrayCurrentsAdsValues, arrayCurrentsCompanyValues, donughtRecords;#
|
||||
}
|
||||
var sumVisitsAds = 0;
|
||||
var sumCompanyValues = 0;
|
||||
|
||||
{# function loadChartData() {
|
||||
setArrayValues();
|
||||
myChart.update();
|
||||
myDoughnutChart.update();
|
||||
} #}
|
||||
|
||||
{# function getChartData(date1, date2) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: '{{ path("company_ajax_dashboard") }}',
|
||||
data: 'date1=' + date1 + '&date2=' + date2,
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
arrayRecords = data.lineRecords;
|
||||
donughtRecords = data.donughtRecords;
|
||||
myDoughnutChart.data.datasets[0].data = donughtRecords;
|
||||
loadChartData();
|
||||
$('.fa-refresh').hide();
|
||||
},
|
||||
error: function (data) {
|
||||
$('.fa-refresh').hide();
|
||||
}
|
||||
});
|
||||
} #}
|
||||
|
||||
{# document.addEventListener("DOMContentLoaded", function (event) {
|
||||
$('.fa-refresh').hide();
|
||||
getChartData(0, 0);
|
||||
configDatePicker = {
|
||||
applyBtnClass: 'btn btn-default',
|
||||
format: 'DD-MM-YYYY',
|
||||
separator: ' au ',
|
||||
endDate: new Date(),
|
||||
maxDays: 365
|
||||
}
|
||||
$('#choiceMonth').dateRangePicker(configDatePicker).bind('datepicker-apply', function (event, obj) {
|
||||
$('.fa-refresh').show();
|
||||
var month1 = obj.date1.getMonth();
|
||||
var day1 = obj.date1.getDate();
|
||||
var year1 = obj.date1.getFullYear();
|
||||
var month2 = obj.date2.getMonth();
|
||||
var day2 = obj.date2.getDate();
|
||||
var year2 = obj.date2.getFullYear();
|
||||
var date1 = (month1 + 1) + "/" + day1 + "/" + year1 + " 00:00:01";
|
||||
var date2 = (month2 + 1) + "/" + day2 + "/" + year2 + " 23:59:59";
|
||||
getChartData(date1, date2);
|
||||
});
|
||||
$('.apply-btn').attr('value', 'Valider');
|
||||
}); #}
|
||||
|
||||
{# function setArrayValues() {
|
||||
arrayCurrentsLabel = [];
|
||||
arrayCurrentsAdsValues = [];
|
||||
arrayCurrentsCompanyValues = [];
|
||||
arrayRecords['labels'].forEach(function (element, index) {
|
||||
var date = element.split("-");
|
||||
var dateAffiche = date[2] + "-" + date[1] + "-" + date[0];
|
||||
arrayCurrentsLabel.push(dateAffiche);
|
||||
arrayCurrentsAdsValues.push(arrayRecords['datasetsAd'][index]);
|
||||
arrayCurrentsCompanyValues.push(arrayRecords['datasetsCompany'][index]);
|
||||
});
|
||||
myChart.data.labels = arrayCurrentsLabel;
|
||||
myChart.data.datasets[0].data = arrayCurrentsAdsValues;
|
||||
myChart.data.datasets[1].data = arrayCurrentsCompanyValues;
|
||||
|
||||
if (arrayCurrentsAdsValues.length > 0) {
|
||||
sumVisitsAds = arrayCurrentsAdsValues.reduce(function (memo, val) {
|
||||
let value = val || 0;
|
||||
if (value != null) {
|
||||
return memo + value;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sumVisitsAds = 0;
|
||||
}
|
||||
if (arrayCurrentsCompanyValues.length > 0) {
|
||||
sumCompanyValues = arrayCurrentsCompanyValues.reduce(function (memo, val) {
|
||||
let value = val || 0;
|
||||
if (value != null) {
|
||||
return memo + value;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sumCompanyValues = 0;
|
||||
}
|
||||
|
||||
$('.countVisitsAds').html(sumVisitsAds);
|
||||
$('.countVisitsCompany').html(sumCompanyValues);
|
||||
{
|
||||
#
|
||||
function loadChartData() {
|
||||
setArrayValues();
|
||||
myChart.update();
|
||||
myDoughnutChart.update();
|
||||
}#
|
||||
}
|
||||
|
||||
var dataLine = {
|
||||
datasets: [{
|
||||
label: "Nombre de visite d'annonce par jour",
|
||||
fill: false,
|
||||
fontColor: "rgba(39,139,231,1)",
|
||||
backgroundColor: "rgba(39,139,231,1)",
|
||||
borderColor: "rgba(39,139,231,1)"
|
||||
}, {
|
||||
label: "Nombre de visite de votre page entreprise",
|
||||
fill: false,
|
||||
fontColor: "#F9C339",
|
||||
backgroundColor: "#F9C339",
|
||||
borderColor: "#F9C339"
|
||||
}]
|
||||
};
|
||||
{
|
||||
#
|
||||
function getChartData(date1, date2) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: '{{ path("company_ajax_dashboard") }}',
|
||||
data: 'date1=' + date1 + '&date2=' + date2,
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
arrayRecords = data.lineRecords;
|
||||
donughtRecords = data.donughtRecords;
|
||||
myDoughnutChart.data.datasets[0].data = donughtRecords;
|
||||
loadChartData();
|
||||
$('.fa-refresh').hide();
|
||||
},
|
||||
error: function (data) {
|
||||
$('.fa-refresh').hide();
|
||||
}
|
||||
});
|
||||
}#
|
||||
}
|
||||
|
||||
var ctx = document.getElementById("nb_visits");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: dataLine,
|
||||
options: {
|
||||
legend: {
|
||||
display: false
|
||||
},
|
||||
scales: {
|
||||
xAxes: [{
|
||||
display: true,
|
||||
scaleLabel: {
|
||||
display: true,
|
||||
labelString: 'Date'
|
||||
}
|
||||
}],
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
min: 0
|
||||
},
|
||||
scaleLabel: {
|
||||
display: true,
|
||||
labelString: 'Valeur'
|
||||
}
|
||||
}]
|
||||
{
|
||||
#
|
||||
document.addEventListener("DOMContentLoaded", function (event) {
|
||||
$('.fa-refresh').hide();
|
||||
getChartData(0, 0);
|
||||
configDatePicker = {
|
||||
applyBtnClass: 'btn btn-default',
|
||||
format: 'DD-MM-YYYY',
|
||||
separator: ' au ',
|
||||
endDate: new Date(),
|
||||
maxDays: 365
|
||||
}
|
||||
}
|
||||
});
|
||||
$('#choiceMonth').dateRangePicker(configDatePicker).bind('datepicker-apply', function (event, obj) {
|
||||
$('.fa-refresh').show();
|
||||
var month1 = obj.date1.getMonth();
|
||||
var day1 = obj.date1.getDate();
|
||||
var year1 = obj.date1.getFullYear();
|
||||
var month2 = obj.date2.getMonth();
|
||||
var day2 = obj.date2.getDate();
|
||||
var year2 = obj.date2.getFullYear();
|
||||
var date1 = (month1 + 1) + "/" + day1 + "/" + year1 + " 00:00:01";
|
||||
var date2 = (month2 + 1) + "/" + day2 + "/" + year2 + " 23:59:59";
|
||||
getChartData(date1, date2);
|
||||
});
|
||||
$('.apply-btn').attr('value', 'Valider');
|
||||
});#
|
||||
}
|
||||
|
||||
var dataDonught = {
|
||||
labels: [
|
||||
"Visites de talents",
|
||||
"Visites d'entreprises",
|
||||
"Visites d'internautes non inscrit"
|
||||
],
|
||||
datasets: [{
|
||||
data: donughtRecords,
|
||||
backgroundColor: [
|
||||
"#FF6384",
|
||||
"#36A2EB",
|
||||
"#FFCE56"
|
||||
{
|
||||
#
|
||||
function setArrayValues() {
|
||||
arrayCurrentsLabel = [];
|
||||
arrayCurrentsAdsValues = [];
|
||||
arrayCurrentsCompanyValues = [];
|
||||
arrayRecords['labels'].forEach(function (element, index) {
|
||||
var date = element.split("-");
|
||||
var dateAffiche = date[2] + "-" + date[1] + "-" + date[0];
|
||||
arrayCurrentsLabel.push(dateAffiche);
|
||||
arrayCurrentsAdsValues.push(arrayRecords['datasetsAd'][index]);
|
||||
arrayCurrentsCompanyValues.push(arrayRecords['datasetsCompany'][index]);
|
||||
});
|
||||
myChart.data.labels = arrayCurrentsLabel;
|
||||
myChart.data.datasets[0].data = arrayCurrentsAdsValues;
|
||||
myChart.data.datasets[1].data = arrayCurrentsCompanyValues;
|
||||
|
||||
if (arrayCurrentsAdsValues.length > 0) {
|
||||
sumVisitsAds = arrayCurrentsAdsValues.reduce(function (memo, val) {
|
||||
let value = val || 0;
|
||||
if (value != null) {
|
||||
return memo + value;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sumVisitsAds = 0;
|
||||
}
|
||||
if (arrayCurrentsCompanyValues.length > 0) {
|
||||
sumCompanyValues = arrayCurrentsCompanyValues.reduce(function (memo, val) {
|
||||
let value = val || 0;
|
||||
if (value != null) {
|
||||
return memo + value;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
sumCompanyValues = 0;
|
||||
}
|
||||
|
||||
$('.countVisitsAds').html(sumVisitsAds);
|
||||
$('.countVisitsCompany').html(sumCompanyValues);
|
||||
}
|
||||
|
||||
var dataLine = {
|
||||
datasets: [{
|
||||
label: "Nombre de visite d'annonce par jour",
|
||||
fill: false,
|
||||
fontColor: "rgba(39,139,231,1)",
|
||||
backgroundColor: "rgba(39,139,231,1)",
|
||||
borderColor: "rgba(39,139,231,1)"
|
||||
}, {
|
||||
label: "Nombre de visite de votre page entreprise",
|
||||
fill: false,
|
||||
fontColor: "#F9C339",
|
||||
backgroundColor: "#F9C339",
|
||||
borderColor: "#F9C339"
|
||||
}]
|
||||
};
|
||||
|
||||
var ctx = document.getElementById("nb_visits");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: dataLine,
|
||||
options: {
|
||||
legend: {
|
||||
display: false
|
||||
},
|
||||
scales: {
|
||||
xAxes: [{
|
||||
display: true,
|
||||
scaleLabel: {
|
||||
display: true,
|
||||
labelString: 'Date'
|
||||
}
|
||||
}],
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
min: 0
|
||||
},
|
||||
scaleLabel: {
|
||||
display: true,
|
||||
labelString: 'Valeur'
|
||||
}
|
||||
}]
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var dataDonught = {
|
||||
labels: [
|
||||
"Visites de talents",
|
||||
"Visites d'entreprises",
|
||||
"Visites d'internautes non inscrit"
|
||||
],
|
||||
hoverBackgroundColor: [
|
||||
"#FF6384",
|
||||
"#36A2EB",
|
||||
"#FFCE56"
|
||||
]
|
||||
}]
|
||||
};
|
||||
var ctxDonught = document.getElementById("donught_visits");
|
||||
var myDoughnutChart = new Chart(ctxDonught, {
|
||||
type: 'doughnut',
|
||||
data: dataDonught,
|
||||
options: {
|
||||
legend: {
|
||||
display: false,
|
||||
},
|
||||
animation: {
|
||||
animateScale: true
|
||||
datasets: [{
|
||||
data: donughtRecords,
|
||||
backgroundColor: [
|
||||
"#FF6384",
|
||||
"#36A2EB",
|
||||
"#FFCE56"
|
||||
],
|
||||
hoverBackgroundColor: [
|
||||
"#FF6384",
|
||||
"#36A2EB",
|
||||
"#FFCE56"
|
||||
]
|
||||
}]
|
||||
};
|
||||
var ctxDonught = document.getElementById("donught_visits");
|
||||
var myDoughnutChart = new Chart(ctxDonught, {
|
||||
type: 'doughnut',
|
||||
data: dataDonught,
|
||||
options: {
|
||||
legend: {
|
||||
display: false,
|
||||
},
|
||||
animation: {
|
||||
animateScale: true
|
||||
}
|
||||
}
|
||||
}
|
||||
}); #}
|
||||
});#
|
||||
}
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -80,7 +80,7 @@ twig:
|
||||
globals:
|
||||
push_public_key: "%push_params.public_key%"
|
||||
fairlane_cookie_consent: '@fairlane_cookie_consent.twig'
|
||||
version: '2.5.1'
|
||||
version: '2.5.2'
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -36,9 +36,27 @@ class CompanyController extends Controller
|
||||
$stats = $this->get("app.stats_manager");
|
||||
$em = $this->getDoctrine()->getManager();
|
||||
$ads = $em->getRepository('AppBundle:Ad')->findBy(array('company' => $this->getUser()->getCompany()));
|
||||
$arrayDate['dateBegin'] = new \DateTime('now -7 Day');
|
||||
$arrayDate['dateEnd'] = new \DateTime('now');
|
||||
$records7days = $stats->getCompanyDashboard($this->getUser()->getCompany()->getId(), $arrayDate);
|
||||
//dump($records7days);
|
||||
$arrayDate['dateBegin'] = new \DateTime('now -30 Day');
|
||||
$records30days = $stats->getCompanyDashboard($this->getUser()->getCompany()->getId(), $arrayDate);
|
||||
//dump($records30days);
|
||||
$records = $stats->getCompanyDashboard($this->getUser()->getCompany()->getId(), null);
|
||||
//dump($records);
|
||||
$answersSended = $em->getRepository('AppBundle:Answer')->getAnswerByCompanyStatus($this->getUser()->getCompany()->getId(), 'SENDED');
|
||||
$answersDraft = $em->getRepository('AppBundle:Answer')->getAnswerByCompanyStatus($this->getUser()->getCompany()->getId(), 'DRAFT');
|
||||
$nbAnswersSended =count($answersSended);
|
||||
$nbAnswersDraft =count($answersDraft);
|
||||
|
||||
return $this->render('company/dashboard.html.twig', [
|
||||
'ads' => $ads,
|
||||
'records7days' => $records7days,
|
||||
'records30days' => $records30days,
|
||||
'records' => $records,
|
||||
'nbAnswersSended' => $nbAnswersSended,
|
||||
'nbAnswersDraft' => $nbAnswersDraft,
|
||||
'arrayByAds' => $records['arrayByAds'],
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -407,6 +407,8 @@ class User extends BaseUser
|
||||
$linkedin="";
|
||||
$twitter="";
|
||||
if($this->getCompany()->getExtra()){
|
||||
//19/01 j'ai eneleve le initExtra de ExtraJsonTrait
|
||||
$this->getCompany()->initExtra();
|
||||
if(array_key_exists("phoneTalent", $this->getCompany()->getExtra())){
|
||||
if($this->getCompany()->getExtra()["phoneTalent"]){
|
||||
$phone= $this->getCompany()->getExtra()["phoneTalent"];
|
||||
|
||||
@@ -113,6 +113,26 @@ class AnswerRepository extends AbstractRepository
|
||||
->getResult();
|
||||
}
|
||||
|
||||
public function getAnswerByCompanyStatus($id, $status)
|
||||
{
|
||||
$qb = $this
|
||||
->createQueryBuilder('a')
|
||||
->select('a')
|
||||
->where('a.ad IN (
|
||||
SELECT p.id
|
||||
FROM AppBundle:Ad p
|
||||
WHERE p.company = :id
|
||||
)')
|
||||
->setParameter(':id', $id)
|
||||
->andWhere('a.status = :status')
|
||||
->setParameter(':status', $status)
|
||||
->orderBy('a.uTime','DESC');
|
||||
|
||||
return $qb
|
||||
->getQuery()
|
||||
->getResult();
|
||||
}
|
||||
|
||||
|
||||
public function getAnswerByAdsShare( $adId)
|
||||
{
|
||||
|
||||
@@ -77,8 +77,12 @@ class CompanyManager
|
||||
);
|
||||
}
|
||||
|
||||
$company->setExtra(null);
|
||||
$this->em->persist($company);
|
||||
$this->em->flush();
|
||||
$company->setExtra($extra);
|
||||
$company->upload();
|
||||
|
||||
//$company->uploadCv();
|
||||
}
|
||||
$this->em->persist($company);
|
||||
|
||||
@@ -66,8 +66,8 @@ trait ExtraJsonTrait
|
||||
*/
|
||||
public function getExtra()
|
||||
{
|
||||
|
||||
$this->initExtra();
|
||||
//19/01 : modif pour size et siren cote Symfony. Effet sur la web app?
|
||||
//$this->initExtra();
|
||||
return $this->extra;
|
||||
}
|
||||
|
||||
|
||||
@@ -96,4 +96,35 @@
|
||||
text-decoration : underline;
|
||||
|
||||
}
|
||||
|
||||
.text-card h3, .text-card span, .text-card h4{
|
||||
color:#fff;
|
||||
}
|
||||
|
||||
.card-background-1{
|
||||
background-color:#25D89A !important;
|
||||
border-radius:3px !important;
|
||||
padding:20px;
|
||||
min-height:180px;
|
||||
|
||||
}
|
||||
|
||||
.card-background-2{
|
||||
background-color:#1689fb !important;
|
||||
border-radius:3px !important;
|
||||
|
||||
padding:20px;
|
||||
min-height:180px;
|
||||
}
|
||||
|
||||
.card-background-3{
|
||||
background-color:#FF5A5F !important;
|
||||
border-radius:3px !important;
|
||||
padding:20px;
|
||||
min-height:180px;
|
||||
}
|
||||
|
||||
.vertical-border{
|
||||
border-right: 1px solid white;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user