function param_val($row, $type, $source_name = '')
{
    global $group_types, $source_config;
    static $outs = array();
    static $links = array();
    $name = '';
    if (is_array($row)) {
        $v = $row[$type];
        $source_name = $row['source_name'];
    } else {
        $v = $row;
    }
    // Ссылка "Другие" для площадок и пользовательских параметров
    if (is_other_link($v, $type)) {
        $name = 'Другие';
    } else {
        if ($type == 'referer') {
            if (substr($v, 0, 4) == 'http' or strstr($v, '/') !== false) {
                $name = parse_url($v);
                $name = $name['host'];
            } else {
                $name = $v;
            }
        } elseif ($type == 'source_name') {
            if ($v == 'source' or $v == 'SOURCE') {
                // значение по умолчанию
                $name = '';
            } else {
                $name = empty($source_config[$v]['name']) ? $v : $source_config[$v]['name'];
            }
        } elseif ($type == 'ads_name') {
            if ($v != '') {
                $name = is_array($row) ? $row['campaign_name'] . '-' . $row['ads_name'] : $row;
            }
        } elseif ($type == 'out_id') {
            if (isset($outs[$v])) {
                $name = $outs[$v];
            } else {
                $name = current(get_out_description($v));
                $outs[$v] = $name;
            }
        } elseif ($type == 'rule_id') {
            if (isset($links[$v])) {
                $name = $links[$v];
            } else {
                $name = get_rule_description($v);
                $links[$v] = $name;
            }
        } else {
            // Специальные поля, определённые для источника в виде списка
            if (!empty($source_config[$source_name]['params']) and strstr($type, 'click_param_value') !== false) {
                $n = intval(str_replace('click_param_value', '', $type));
                $i = 1;
                foreach ($source_config[$source_name]['params'] as $param) {
                    if ($i == $n and !empty($param['list'][$v])) {
                        $name = str_replace(' ', ' ', $param['list'][$v]);
                        return $name;
                    }
                    $i++;
                }
                $name = $v;
            } else {
                $name = $v;
            }
        }
    }
    if (trim($name) == '' or $name == '{empty}' or $type == 'campaign_name' and $name == 'campaign' or $type == 'ads_name' and $name == 'campaign-ads') {
        $name = $group_types[$type][1];
    }
    return $name;
}
     $icon_tablet = 'phone';
 } elseif ($row['is_tablet'] == 1) {
     $icon_tablet = 'tablet';
 } else {
     $icon_tablet = '';
 }
 // Источник
 $source_name = empty($source_config[$row['source_name']]['name']) ? $row['source_name'] : $source_config[$row['source_name']]['name'];
 if ($row['source_name'] == 'source') {
     $source_name = '—';
 }
 $rule_decs = get_rule_description($row['rule_id']);
 // Ссылка
 $date_url = (isset($_REQUEST['date']) and preg_match('/^\\d{4}-\\d{2}-\\d{2}$/', $_REQUEST['date'])) ? '&date=' . $_REQUEST['date'] : '';
 if ($row['out_id'] > 0) {
     $out_text = "<a href='?filter_by=out_id&value={$row['out_id']}{$date_url}'>" . _e(current(get_out_description($row['out_id']))) . "</a>";
 } else {
     $out_text = "Не определён";
 }
 // Адрес
 $arr_locations = array();
 if ($row['country'] != '') {
     $arr_locations[] = $row['country'];
 }
 if ($row['state'] != '') {
     $arr_locations[] = $row['state'];
 }
 if ($row['city'] != '') {
     $arr_locations[] = $row['city'];
 }
 $str_location = implode(', ', $arr_locations);
Ejemplo n.º 3
0
    }
    if (!isset($data[$k])) {
        $data[$k] = array('id' => $r['out_id'], 'name' => $r['name'], 'price' => 0, 'unique' => 0, 'income' => 0, 'sale' => 0, 'out' => 0, 'cnt' => 0);
    }
    $data[$k]['cnt'] += $r['cnt'];
    $data[$k]['price'] += $r['click_price'];
    $data[$k]['unique'] += $r['is_unique'];
    $data[$k]['income'] += $r['conversion_price_main'];
    $data[$k]['sale'] += $r['is_sale'];
    $data[$k]['out'] += $r['out'];
}
$fromF = date('d.m.Y', strtotime($from));
$toF = date('d.m.Y', strtotime($to));
$value_date_range = "{$fromF} - {$toF}";
if ($limited_to) {
    $report_name = 'Переходы на ' . current(get_out_description($limited_to)) . ' за';
    $report_name_tag = 'h5';
} else {
    $report_name = 'Переходы на целевые страницы за';
    $report_name_tag = 'h3';
}
// Выбор даты
echo '<form method="post"  name="datachangeform" id="range_form">
        <div id="per_day_range" class="pull-right" style="margin-top:0px; margin-bottom:10px;">
            <span class="glyphicon glyphicon-calendar"></span>
            <span id="cur_day_range">' . date('d.m.Y', strtotime($from)) . ' - ' . date('d.m.Y', strtotime($to)) . '</span> <b class="caret"></b>
            <input type="hidden" name="from" id="sStart" value="">
            <input type="hidden" name="to" id="sEnd" value="">
        </div>
        
        <div><' . $report_name_tag . '>' . _e($report_name) . '</' . $report_name_tag . '></div>