Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
A
addcpm-json
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Александр Чаплыгин
addcpm-json
Commits
152e37c5
Commit
152e37c5
authored
Apr 07, 2020
by
Александр Чаплыгин
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Фильтрация списка кампаний в табл., срок действия, правки по скриптам
parent
946fc237
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
213 additions
and
99 deletions
+213
-99
styles-amsystem.css
src/public/css/styles-amsystem.css
+43
-0
amsystem-campaign.js
src/public/js/adm/amsystem-campaign.js
+8
-2
amsystem.js
src/public/js/adm/amsystem.js
+25
-0
CabinetAmSystem.php
src/src/App/Action/User/CabinetAmSystem.php
+5
-3
Campaign.php
src/src/App/Entity/AmSystem/Campaign.php
+22
-0
Statistics.php
src/src/App/Model/Statistics.php
+38
-80
_format.phtml
src/templates/app/user/_format.phtml
+11
-0
campaign_item.phtml
src/templates/app/user/campaign_item.phtml
+4
-3
campaigns_list.phtml
src/templates/app/user/campaigns_list.phtml
+57
-11
No files found.
src/public/css/styles-amsystem.css
View file @
152e37c5
...
@@ -97,6 +97,12 @@ table.campaigns tbody tr td.stat {
...
@@ -97,6 +97,12 @@ table.campaigns tbody tr td.stat {
text-align
:
right
;
text-align
:
right
;
}
}
table
.campaigns
thead
th
.stat
{
width
:
1px
;
text-align
:
right
;
font-family
:
monospace
;
}
table
.campaigns
tbody
tr
.group-item
{
table
.campaigns
tbody
tr
.group-item
{
font-weight
:
bold
;
font-weight
:
bold
;
background-color
:
#f9f9f9
;
background-color
:
#f9f9f9
;
...
@@ -486,5 +492,41 @@ textarea#cities-codes
...
@@ -486,5 +492,41 @@ textarea#cities-codes
font-family
:
monospace
;
font-family
:
monospace
;
text-align
:
right
;
text-align
:
right
;
}
}
.table
tbody
tr
td
.stat.date
{
font-size
:
12px
;
}
.table
tbody
tr
td
.stat.date
span
.not-active
{
color
:
#D33E3D
;
}
.form-control.campaign-status
{
display
:
inline
;
width
:
120px
;
}
.table.active
tr
.not-active
,
.table.not-active
tr
.active
,
.table.archive
tr
.not-archive
,
.table.not-archive
tr
.archive
{
display
:
none
!important
;
}
.table.common-stat
thead
tr
th
:not
(
:first-child
),
.table.common-stat
tbody
tr
td
:not
(
:first-child
)
{
text-align
:
right
;
}
.table.campaign-banners
th
,
.table.campaign-banners
td
{
padding
:
4px
;
}
\ No newline at end of file
src/public/js/adm/amsystem-campaign.js
View file @
152e37c5
...
@@ -20,7 +20,7 @@ $(document).ready(function () {
...
@@ -20,7 +20,7 @@ $(document).ready(function () {
$switchItems
.
removeClass
(
classSelected
);
$switchItems
.
removeClass
(
classSelected
);
$this
.
addClass
(
classSelected
);
$this
.
addClass
(
classSelected
);
window
.
location
.
hash
=
type
;
location
.
replace
(
"#"
+
type
)
;
$formGroups
.
removeClass
(
classSelected
);
$formGroups
.
removeClass
(
classSelected
);
$
(
'.form-group-data[data-type="'
+
type
+
'"]'
).
addClass
(
classSelected
);
$
(
'.form-group-data[data-type="'
+
type
+
'"]'
).
addClass
(
classSelected
);
...
@@ -185,6 +185,10 @@ $(document).ready(function () {
...
@@ -185,6 +185,10 @@ $(document).ready(function () {
isCurrencyValue
=
currencyFields
.
indexOf
(
dataLine
)
>
-
1
,
isCurrencyValue
=
currencyFields
.
indexOf
(
dataLine
)
>
-
1
,
format
=
(
isCurrencyValue
)
?
d3
.
format
(
',.2f'
)
:
d3
.
format
(
',.0f'
);
format
=
(
isCurrencyValue
)
?
d3
.
format
(
',.2f'
)
:
d3
.
format
(
',.0f'
);
if
([
'ctr'
,
'cpm'
,
'cpc'
].
indexOf
(
dataLine
)
>
-
1
)
{
format
=
d3
.
format
(
',.2f'
);
}
if
(
parseFloat
(
format
(
value
))
==
0
&&
value
!=
0
)
{
if
(
parseFloat
(
format
(
value
))
==
0
&&
value
!=
0
)
{
var
accuracy
=
Math
.
abs
(
Math
.
floor
(
Math
.
log10
(
value
)));
var
accuracy
=
Math
.
abs
(
Math
.
floor
(
Math
.
log10
(
value
)));
return
value
.
toFixed
(
accuracy
);
return
value
.
toFixed
(
accuracy
);
...
@@ -216,7 +220,9 @@ $(document).ready(function () {
...
@@ -216,7 +220,9 @@ $(document).ready(function () {
if
(
isCurrencyValue
)
format
=
d3
.
format
(
',.2f'
);
if
(
isCurrencyValue
)
format
=
d3
.
format
(
',.2f'
);
if
(
currentActiveLine
==
'ctr'
)
format
=
d3
.
format
(
',.2f'
);
if
(
currentActiveLine
==
'ctr'
)
format
=
d3
.
format
(
',.2f'
);
if
(
currentActiveLine
==
'cpc'
)
format
=
d3
.
format
(
',.1f'
);
if
(
currentActiveLine
==
'cpm'
)
format
=
d3
.
format
(
',.2f'
);
if
(
currentActiveLine
==
'cpc'
)
format
=
d3
.
format
(
',.2f'
);
if
(
isCurrencyValue
)
return
format
(
value
)
+
' ₴'
;
if
(
isCurrencyValue
)
return
format
(
value
)
+
' ₴'
;
if
(
currentActiveLine
==
'ctr'
)
return
format
(
value
)
+
' %'
;
if
(
currentActiveLine
==
'ctr'
)
return
format
(
value
)
+
' %'
;
...
...
src/public/js/adm/amsystem.js
View file @
152e37c5
...
@@ -26,5 +26,30 @@ $(document).ready(function () {
...
@@ -26,5 +26,30 @@ $(document).ready(function () {
// Разворачиваем списки групп кампаний при старте:
// Разворачиваем списки групп кампаний при старте:
$
(
'.table.campaigns span.group'
).
click
();
$
(
'.table.campaigns span.group'
).
click
();
// Фильтрация для таблицы:
var
$table
=
$
(
'.table.campaigns'
),
$selectStatus
=
$
(
'.form-control.campaign-status'
),
filters
=
[
'all'
,
'active'
,
'not-active'
,
'archive'
,
'not-archive'
],
cookieName
=
'table_filter_status'
,
currentFilter
=
(
$
.
cookie
(
cookieName
))
?
$
.
cookie
(
cookieName
)
:
'not-archive'
;
function
setTableFilter
(
val
)
{
$selectStatus
.
val
(
val
);
filters
.
forEach
(
function
(
item
)
{
$table
.
removeClass
(
item
);
})
$table
.
addClass
(
val
);
$
.
cookie
(
cookieName
,
val
,
{
expires
:
365
});
}
$selectStatus
.
on
(
'change'
,
function
(){
setTableFilter
(
$
(
this
).
val
());
});
// Устанавливаем по-умолчанию фильтр для таблицы:
setTableFilter
(
currentFilter
);
});
});
src/src/App/Action/User/CabinetAmSystem.php
View file @
152e37c5
...
@@ -191,11 +191,12 @@ class CabinetAmSystem extends Common
...
@@ -191,11 +191,12 @@ class CabinetAmSystem extends Common
/** @var \App\Model\Statistics $stats */
/** @var \App\Model\Statistics $stats */
$stats
=
$this
->
container
->
get
(
\App\Model\Statistics
::
class
);
$stats
=
$this
->
container
->
get
(
\App\Model\Statistics
::
class
);
$banners_stats
=
[];
$banners_stats
=
[];
foreach
(
$banners
as
$banner_item
)
{
foreach
(
$banners
as
$banner_item
)
{
$banner_id
=
$banner_item
[
'id'
];
$banner_id
=
$banner_item
[
'id'
];
$banners_stats
[
$banner_id
]
=
$stats
->
getBannersStat
([
$banner_id
],
$campaign
->
getTargetAction
(),
null
);
/*
$banners_stats[$banner_id] = $stats->getBannersStat([$banner_id], null);
$banners_stats[$banner_id] = $stats->getBannersStat([$banner_id], null);
if ($campaign->getTargetAction() == 'load') {
if ($campaign->getTargetAction() == 'load') {
$banners_stats[$banner_id]['views'] = $banners_stats[$banner_id]['loads'];
$banners_stats[$banner_id]['views'] = $banners_stats[$banner_id]['loads'];
...
@@ -208,9 +209,10 @@ class CabinetAmSystem extends Common
...
@@ -208,9 +209,10 @@ class CabinetAmSystem extends Common
$banners_stats[$banner_id]['ctr'] = ($views != 0) ? round(($clicks/$views)*100, 2) : 0;
$banners_stats[$banner_id]['ctr'] = ($views != 0) ? round(($clicks/$views)*100, 2) : 0;
$banners_stats[$banner_id]['cpm'] = ($views != 0) ? round(($money/$views)*1000, 3) : 0;
$banners_stats[$banner_id]['cpm'] = ($views != 0) ? round(($money/$views)*1000, 3) : 0;
$banners_stats
[
$banner_id
][
'cpc'
]
=
(
$clicks
!=
0
)
?
round
((
$money
/
$clicks
)
*
100
,
1
)
:
0
;
$banners_stats[$banner_id]['cpc'] = ($clicks != 0) ? round(($money/$clicks), 1) : 0;
$banners_stats[$banner_id]['money'] = round($banners_stats[$banner_id]['money'], 2);
$banners_stats[$banner_id]['money'] = round($banners_stats[$banner_id]['money'], 2);
*/
}
}
}
}
...
...
src/src/App/Entity/AmSystem/Campaign.php
View file @
152e37c5
...
@@ -67,6 +67,17 @@ class Campaign extends Common
...
@@ -67,6 +67,17 @@ class Campaign extends Common
return
$this
;
return
$this
;
}
}
/* archive */
public
function
getArchive
()
{
return
$this
->
archive
;
}
public
function
setArchive
(
$archive
)
{
$this
->
archive
=
$archive
;
return
$this
;
}
/* url */
/* url */
public
function
getUrl
()
public
function
getUrl
()
{
{
...
@@ -78,6 +89,17 @@ class Campaign extends Common
...
@@ -78,6 +89,17 @@ class Campaign extends Common
return
$this
;
return
$this
;
}
}
/* checksum */
public
function
getChecksum
()
{
return
$this
->
checksum
;
}
public
function
setChecksum
(
$checksum
)
{
$this
->
checksum
=
$checksum
;
return
$this
;
}
/* date_begin */
/* date_begin */
public
function
getDateBegin
()
public
function
getDateBegin
()
{
{
...
...
src/src/App/Model/Statistics.php
View file @
152e37c5
...
@@ -345,6 +345,30 @@ class Statistics
...
@@ -345,6 +345,30 @@ class Statistics
return
$stats
;
return
$stats
;
}
}
// Добавление спец. полей в статистики по кампаниям (баннерам)
private
function
AddSpecialFields
(
&
$stats
)
{
if
(
$taget_action
==
'load'
)
{
$stats
[
'views'
]
=
$stats
[
'loads'
];
$stats
[
'reach'
]
=
$stats
[
'reach_load'
];
}
else
{
$stats
[
'reach'
]
=
$stats
[
'reach_view'
];
}
unset
(
$stats
[
'loads'
]);
unset
(
$stats
[
'reach_load'
]);
unset
(
$stats
[
'reach_view'
]);
$views
=
$stats
[
'views'
];
$money
=
$stats
[
'money'
];
$clicks
=
$stats
[
'clicks'
];
$stats
[
'ctr'
]
=
(
$views
!=
0
)
?
round
((
$clicks
/
$views
)
*
100
,
2
)
:
0
;
$stats
[
'cpm'
]
=
(
$views
!=
0
)
?
round
((
$money
/
$views
)
*
1000
,
3
)
:
0
;
$stats
[
'cpc'
]
=
(
$clicks
!=
0
)
?
round
((
$money
/
$clicks
),
2
)
:
0
;
$stats
[
'money'
]
=
round
(
$stats
[
'money'
],
2
);
}
// Данные для статистики по кампании (баннеры)
// Данные для статистики по кампании (баннеры)
public
function
getCampaignsStat
(
$id_list
,
$taget_action
,
$dates
,
$by_days
=
false
)
public
function
getCampaignsStat
(
$id_list
,
$taget_action
,
$dates
,
$by_days
=
false
)
{
{
...
@@ -392,39 +416,15 @@ class Statistics
...
@@ -392,39 +416,15 @@ class Statistics
if
(
$stats
)
{
if
(
$stats
)
{
// Добавляем спец. поля
$AddSpecialFields
=
function
(
&
$stats
)
{
if
(
$taget_action
==
'load'
)
{
$stats
[
'views'
]
=
$stats
[
'loads'
];
$stats
[
'reach'
]
=
$stats
[
'reach_load'
];
}
else
{
$stats
[
'reach'
]
=
$stats
[
'reach_view'
];
}
unset
(
$stats
[
'loads'
]);
unset
(
$stats
[
'reach_load'
]);
unset
(
$stats
[
'reach_view'
]);
$views
=
$stats
[
'views'
];
$money
=
$stats
[
'money'
];
$clicks
=
$stats
[
'clicks'
];
$stats
[
'ctr'
]
=
(
$views
!=
0
)
?
round
((
$clicks
/
$views
)
*
100
,
2
)
:
0
;
$stats
[
'cpm'
]
=
(
$views
!=
0
)
?
round
((
$money
/
$views
)
*
1000
,
3
)
:
0
;
$stats
[
'cpc'
]
=
(
$clicks
!=
0
)
?
round
((
$money
/
$clicks
)
*
100
,
1
)
:
0
;
$stats
[
'money'
]
=
round
(
$stats
[
'money'
],
2
);
};
if
(
!
$dates
||
!
$by_days
)
if
(
!
$dates
||
!
$by_days
)
{
{
$AddSpecialFields
(
$stats
);
$
this
->
AddSpecialFields
(
$stats
);
$dataStats
=
$stats
;
$dataStats
=
$stats
;
}
}
else
else
{
{
foreach
(
$stats
as
$day
=>
$stat
)
{
foreach
(
$stats
as
$day
=>
$stat
)
{
$AddSpecialFields
(
$stats
[
$day
]);
$
this
->
AddSpecialFields
(
$stats
[
$day
]);
}
}
// Формируем данные для временного промежутка
// Формируем данные для временного промежутка
...
@@ -514,7 +514,14 @@ class Statistics
...
@@ -514,7 +514,14 @@ class Statistics
}
catch
(
\Exception
$e
)
{
}
catch
(
\Exception
$e
)
{
$stats
[
'status'
]
=
'Error'
;
$stats
[
'status'
]
=
'Error'
;
}
}
return
$stats
;
//return $stats;
if
(
$stats
)
{
$this
->
AddSpecialFields
(
$stats
);
$dataStats
=
$stats
;
}
return
$dataStats
;
}
}
// Данные для статистики кампании по сайтам
// Данные для статистики кампании по сайтам
...
@@ -541,35 +548,11 @@ class Statistics
...
@@ -541,35 +548,11 @@ class Statistics
if
(
$stats
)
{
if
(
$stats
)
{
// Добавляем спец. поля
$AddSpecialFields
=
function
(
&
$stats
)
{
if
(
$taget_action
==
'load'
)
{
$stats
[
'views'
]
=
$stats
[
'loads'
];
$stats
[
'reach'
]
=
$stats
[
'reach_load'
];
}
else
{
$stats
[
'reach'
]
=
$stats
[
'reach_view'
];
}
unset
(
$stats
[
'loads'
]);
unset
(
$stats
[
'reach_load'
]);
unset
(
$stats
[
'reach_view'
]);
$views
=
$stats
[
'views'
];
$money
=
$stats
[
'money'
];
$clicks
=
$stats
[
'clicks'
];
$stats
[
'ctr'
]
=
(
$views
!=
0
)
?
round
((
$clicks
/
$views
)
*
100
,
2
)
:
0
;
$stats
[
'cpm'
]
=
(
$views
!=
0
)
?
round
((
$money
/
$views
)
*
1000
,
3
)
:
0
;
$stats
[
'cpc'
]
=
(
$clicks
!=
0
)
?
round
((
$money
/
$clicks
)
*
100
,
1
)
:
0
;
$stats
[
'money'
]
=
round
(
$stats
[
'money'
],
2
);
};
foreach
(
$stats
as
$site
=>
$stat
)
{
foreach
(
$stats
as
$site
=>
$stat
)
{
$AddSpecialFields
(
$stats
[
$site
]);
$
this
->
AddSpecialFields
(
$stats
[
$site
]);
if
(
$stat
[
'sub'
])
{
if
(
$stat
[
'sub'
])
{
foreach
(
$stat
[
'sub'
]
as
$sub
=>
$stat
)
{
foreach
(
$stat
[
'sub'
]
as
$sub
=>
$stat
)
{
$AddSpecialFields
(
$stats
[
$site
][
'sub'
][
$sub
]);
$
this
->
AddSpecialFields
(
$stats
[
$site
][
'sub'
][
$sub
]);
}
}
}
}
}
}
...
@@ -603,41 +586,16 @@ class Statistics
...
@@ -603,41 +586,16 @@ class Statistics
if
(
$stats
)
{
if
(
$stats
)
{
// Добавляем спец. поля
$AddSpecialFields
=
function
(
&
$stats
)
{
if
(
$taget_action
==
'load'
)
{
$stats
[
'views'
]
=
$stats
[
'loads'
];
$stats
[
'reach'
]
=
$stats
[
'reach_load'
];
}
else
{
$stats
[
'reach'
]
=
$stats
[
'reach_view'
];
}
unset
(
$stats
[
'loads'
]);
unset
(
$stats
[
'reach_load'
]);
unset
(
$stats
[
'reach_view'
]);
$views
=
$stats
[
'views'
];
$money
=
$stats
[
'money'
];
$clicks
=
$stats
[
'clicks'
];
$stats
[
'ctr'
]
=
(
$views
!=
0
)
?
round
((
$clicks
/
$views
)
*
100
,
2
)
:
0
;
$stats
[
'cpm'
]
=
(
$views
!=
0
)
?
round
((
$money
/
$views
)
*
1000
,
3
)
:
0
;
$stats
[
'cpc'
]
=
(
$clicks
!=
0
)
?
round
((
$money
/
$clicks
)
*
100
,
1
)
:
0
;
$stats
[
'money'
]
=
round
(
$stats
[
'money'
],
2
);
};
// Убираем города у регионов Киев(703447) и empty:
// Убираем города у регионов Киев(703447) и empty:
foreach
([
703447
,
'empty'
]
as
$region_code
)
{
foreach
([
703447
,
'empty'
]
as
$region_code
)
{
unset
(
$stats
[
$region_code
][
'sub'
]);
unset
(
$stats
[
$region_code
][
'sub'
]);
}
}
foreach
(
$stats
as
$region
=>
$stat
)
{
foreach
(
$stats
as
$region
=>
$stat
)
{
$AddSpecialFields
(
$stats
[
$region
]);
$this
->
AddSpecialFields
(
$stats
[
$region
]);
if
(
$stat
[
'sub'
])
{
if
(
$stat
[
'sub'
])
{
foreach
(
$stat
[
'sub'
]
as
$sub
=>
$stat
)
{
foreach
(
$stat
[
'sub'
]
as
$sub
=>
$stat
)
{
$AddSpecialFields
(
$stats
[
$region
][
'sub'
][
$sub
]);
$
this
->
AddSpecialFields
(
$stats
[
$region
][
'sub'
][
$sub
]);
}
}
}
}
}
}
...
...
src/templates/app/user/_format.phtml
0 → 100644
View file @
152e37c5
<?php
/*
Функции для форматирования
*/
function
formatMoney
(
$val
)
{
return
number_format
((
float
)
$val
,
2
,
','
,
' '
)
.
' ₴'
;
}
?>
src/templates/app/user/campaign_item.phtml
View file @
152e37c5
...
@@ -95,11 +95,12 @@ if (!$error) {
...
@@ -95,11 +95,12 @@ if (!$error) {
$link_campaigns_list
=
$this
->
url
(
'user.cabinet.amsystem'
,
[
'lang'
=>
$lang
]);
$link_campaigns_list
=
$this
->
url
(
'user.cabinet.amsystem'
,
[
'lang'
=>
$lang
]);
$data_request_link
=
$this
->
url
(
'user.cabinet.campaign'
,
[
'lang'
=>
$lang
]);
$data_request_link
=
$this
->
url
(
'user.cabinet.campaign'
,
[
'lang'
=>
$lang
]);
}
}
?>
?>
<?=
$this
->
partial
(
'app::user/_format'
);
?>
<?php
if
(
$error
)
:
?>
<?php
if
(
$error
)
:
?>
<section
class=
"b-content__work error"
>
<section
class=
"b-content__work error"
>
...
@@ -358,7 +359,7 @@ if (!$error) {
...
@@ -358,7 +359,7 @@ if (!$error) {
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'money'
]
?>
₴
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
formatMoney
(
$stat
[
'money'
])
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpm'
]
?>
₴
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpm'
]
?>
₴
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpc'
]
?>
₴
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpc'
]
?>
₴
</td>
</tr>
</tr>
...
@@ -406,7 +407,7 @@ if (!$error) {
...
@@ -406,7 +407,7 @@ if (!$error) {
<!-- Таблица -->
<!-- Таблица -->
<div
id=
"table-stat"
class=
"b-table_wrapp"
>
<div
id=
"table-stat"
class=
"b-table_wrapp"
>
<table
id=
"table-line-common"
class=
"table table-striped"
>
<table
id=
"table-line-common"
class=
"table table-striped
common-stat
"
>
<thead
class=
"sortable"
>
<thead
class=
"sortable"
>
<tr>
<tr>
<th
class=
"period"
data-id=
"period"
>
<th
class=
"period"
data-id=
"period"
>
...
...
src/templates/app/user/campaigns_list.phtml
View file @
152e37c5
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
/** @var $this \Zend\View\Renderer\PhpRenderer */
/** @var $this \Zend\View\Renderer\PhpRenderer */
$this
->
headScript
()
$this
->
headScript
()
->
appendFile
(
'/js/jquery.cookie.js'
)
->
appendFile
(
'/js/adm/amsystem.js'
)
->
appendFile
(
'/js/adm/amsystem.js'
)
;
;
...
@@ -43,6 +44,8 @@ $error = $this->error;
...
@@ -43,6 +44,8 @@ $error = $this->error;
?>
?>
<?=
$this
->
partial
(
'app::user/_format'
);
?>
<?php
if
(
$error
)
:
?>
<?php
if
(
$error
)
:
?>
<section
class=
"b-content__work error"
>
<section
class=
"b-content__work error"
>
...
@@ -60,18 +63,30 @@ $error = $this->error;
...
@@ -60,18 +63,30 @@ $error = $this->error;
</div>
</div>
<div
class=
"panel-body all"
>
<div
class=
"panel-body all"
>
<div
class=
"table-filters"
>
Статус кампании:
<select
class=
"form-control campaign-status"
>
<option
value=
"all"
>
<?=
_t
(
'все'
)
?>
</option>
<option
value=
"active"
>
<?=
_t
(
'активные'
)
?>
</option>
<option
value=
"not-active"
>
<?=
_t
(
'не активные'
)
?>
</option>
<option
value=
"archive"
>
<?=
_t
(
'в архиве'
)
?>
</option>
<option
value=
"not-archive"
>
<?=
_t
(
'не в архиве'
)
?>
</option>
</select>
</div>
<table
class=
"table campaigns"
data-content=
"campaigns"
data-action=
"/amsystem/campaigns/id/edit/"
>
<table
class=
"table campaigns"
data-content=
"campaigns"
data-action=
"/amsystem/campaigns/id/edit/"
>
<thead>
<thead>
<tr>
<tr>
<th>
Название кампании
</th>
<th>
Название кампании
</th>
<th
width=
"1px"
>
Показы
</th>
<th
class=
"stat"
>
Срок действия
</th>
<th
width=
"1px"
>
Клики
</th>
<th
class=
"stat"
>
Показы
</th>
<th
width=
"1px"
>
CTR
</th>
<th
class=
"stat"
>
Клики
</th>
<th
width=
"1px"
>
Расход
</th>
<th
class=
"stat"
>
CTR
</th>
<th
width=
"1px"
>
Охват
</th>
<th
class=
"stat"
>
Расход
</th>
<th
width=
"1px"
>
eCPM
</th>
<th
class=
"stat"
>
Охват
</th>
<th
width=
"1px"
>
eCPC
</th>
<th
class=
"stat"
>
eCPM
</th>
<th
class=
"stat"
>
eCPC
</th>
</tr>
</tr>
</thead>
</thead>
<tbody>
<tbody>
...
@@ -95,6 +110,7 @@ $error = $this->error;
...
@@ -95,6 +110,7 @@ $error = $this->error;
<input
class=
"is-active"
type=
"checkbox"
data-id=
"
<?=
$group_id
?>
"
<?php
if
(
$group
[
'active'
])
:
?>
checked
<?php
endif
;
?>
disabled
>
<input
class=
"is-active"
type=
"checkbox"
data-id=
"
<?=
$group_id
?>
"
<?php
if
(
$group
[
'active'
])
:
?>
checked
<?php
endif
;
?>
disabled
>
<span
class=
"item-title"
>
<?=
$group
[
'title'
]
?>
</span>
<span
class=
"item-title"
>
<?=
$group
[
'title'
]
?>
</span>
</td>
</td>
<td></td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
...
@@ -107,7 +123,20 @@ $error = $this->error;
...
@@ -107,7 +123,20 @@ $error = $this->error;
<?php
if
(
$groups_campaigns
[
$group_id
])
:
?>
<?php
if
(
$groups_campaigns
[
$group_id
])
:
?>
<?php
foreach
(
$groups_campaigns
[
$group_id
]
as
$campaign
)
:
?>
<?php
foreach
(
$groups_campaigns
[
$group_id
]
as
$campaign
)
:
?>
<tr
class=
"campaign-item
<?php
if
(
!
$campaign
[
'active'
])
:
?>
disabled
<?php
endif
;
?>
"
data-parent=
"
<?=
$group_id
?>
"
>
<?php
$tr_class
=
''
;
if
(
!
$campaign
[
'active'
])
{
$tr_class
.=
'not-active disabled '
;
}
else
{
$tr_class
.=
'active '
;
}
if
(
$campaign
[
'archive'
])
{
$tr_class
.=
'archive '
;
}
else
{
$tr_class
.=
'not-archive '
;
}
?>
<tr
class=
"campaign-item
<?=
$tr_class
?>
"
data-parent=
"
<?=
$group_id
?>
"
>
<?php
<?php
$campaign_id
=
$campaign
[
'id'
];
$campaign_id
=
$campaign
[
'id'
];
$stat
=
$stats
[
$campaign_id
];
$stat
=
$stats
[
$campaign_id
];
...
@@ -123,13 +152,30 @@ $error = $this->error;
...
@@ -123,13 +152,30 @@ $error = $this->error;
<input
class=
"is-active"
type=
"checkbox"
data-id=
"
<?=
$campaign_id
?>
"
<?php
if
(
$campaign
[
'active'
])
:
?>
checked
<?php
endif
;
?>
disabled
>
<input
class=
"is-active"
type=
"checkbox"
data-id=
"
<?=
$campaign_id
?>
"
<?php
if
(
$campaign
[
'active'
])
:
?>
checked
<?php
endif
;
?>
disabled
>
<span
class=
"item-title"
><a
href=
"
<?=
$btn_link
?>
"
>
<?=
$campaign
[
'title'
]
?>
</a></span>
<span
class=
"item-title"
><a
href=
"
<?=
$btn_link
?>
"
>
<?=
$campaign
[
'title'
]
?>
</a></span>
</td>
</td>
<?php
$begin
=
(
$campaign
[
'date_begin'
])
?
date
(
'd-m-Y'
,
strtotime
(
$campaign
[
'date_begin'
]))
:
' '
;
$end
=
(
$campaign
[
'date_end'
])
?
date
(
'd-m-Y'
,
strtotime
(
$campaign
[
'date_end'
]))
:
' '
;
$today
=
date
(
'Y-m-d'
);
$date_begin_class
=
''
;
$date_end_class
=
''
;
if
(
$campaign
[
'date_begin'
]
&&
$today
<
$campaign
[
'date_begin'
])
{
$date_begin_class
=
'not-active'
;
}
if
(
$campaign
[
'date_end'
]
&&
$today
>
$campaign
[
'date_end'
])
{
$date_end_class
=
'not-active'
;
}
?>
<td
class=
"stat date"
>
<span
class=
"
<?=
$date_begin_class
?>
"
>
<?=
$begin
?>
</span>
–
<span
class=
"
<?=
$date_end_class
?>
"
>
<?=
$end
?>
</span>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'views'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'clicks'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'ctr'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'money'
]
?>
</td>
<td
class=
"stat"
>
<?=
formatMoney
(
$stat
[
'money'
])
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'reach'
]
?>
</td>
<td
class=
"stat
<?=
$target_class
?>
"
>
<?=
$stat
[
'reach'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpm'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpm'
]
?>
₴
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpc'
]
?>
</td>
<td
class=
"stat"
>
<?=
$stat
[
'cpc'
]
?>
₴
</td>
</tr>
</tr>
<?php
endforeach
;
?>
<?php
endforeach
;
?>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment