mirror of
https://github.com/lubuntu-team/lubuntu.me.git
synced 2025-02-23 16:21:07 +00:00
282 lines
9.1 KiB
PHP
282 lines
9.1 KiB
PHP
<script type="text/javascript">
|
|
jQuery(document).ready(function () {
|
|
jQuery('.show-map').click(function () {
|
|
alert('<?php _e( 'To be added soon', 'wp-statistics' ); ?>');
|
|
});
|
|
|
|
postboxes.add_postbox_toggles(pagenow);
|
|
});
|
|
</script>
|
|
<?php
|
|
$date_args = '';
|
|
$daysToDisplay = 20;
|
|
if ( array_key_exists( 'hitdays', $_GET ) ) {
|
|
$daysToDisplay = intval( esc_attr( $_GET['hitdays'] ) );
|
|
$date_args .= '&hitdays=' . $daysToDisplay;
|
|
}
|
|
|
|
if ( array_key_exists( 'rangestart', $_GET ) ) {
|
|
$rangestart = esc_attr( $_GET['rangestart'] );
|
|
$date_args .= '&rangestart=' . $rangestart;
|
|
} else {
|
|
$rangestart = '';
|
|
}
|
|
|
|
if ( array_key_exists( 'rangeend', $_GET ) ) {
|
|
$rangeend = esc_attr( $_GET['rangeend'] );
|
|
$date_args .= '&rangeend=' . $rangeend;
|
|
} else {
|
|
$rangeend = '';
|
|
}
|
|
|
|
list( $daysToDisplay, $rangestart_utime, $rangeend_utime ) = wp_statistics_date_range_calculator(
|
|
$daysToDisplay,
|
|
$rangestart,
|
|
$rangeend
|
|
);
|
|
|
|
$rangestartdate = $WP_Statistics->real_current_date( 'Y-m-d', '-0', $rangestart_utime );
|
|
$rangeenddate = $WP_Statistics->real_current_date( 'Y-m-d', '-0', $rangeend_utime );
|
|
|
|
if ( array_key_exists( 'referr', $_GET ) ) {
|
|
$referr = $_GET['referr'];
|
|
$title = $_GET['referr'];
|
|
$referr_field = '&referr=' . $referr;
|
|
} else {
|
|
$referr = '';
|
|
$referr_field = null;
|
|
}
|
|
|
|
$get_urls = array();
|
|
$total = 0;
|
|
|
|
if ( $referr ) {
|
|
$result = $wpdb->get_results(
|
|
$wpdb->prepare(
|
|
"SELECT * FROM `{$wpdb->prefix}statistics_visitor` WHERE `referred` LIKE %s AND referred <> '' AND `last_counter` BETWEEN %s AND %s ORDER BY `{$wpdb->prefix}statistics_visitor`.`ID` DESC",
|
|
'%' . $referr . '%',
|
|
$rangestartdate,
|
|
$rangeenddate
|
|
)
|
|
);
|
|
|
|
$total = count( $result );
|
|
} else {
|
|
$result = $wpdb->get_results(
|
|
$wpdb->prepare(
|
|
"SELECT referred FROM {$wpdb->prefix}statistics_visitor WHERE referred <> '' AND `last_counter` BETWEEN %s AND %s",
|
|
$rangestartdate,
|
|
$rangeenddate
|
|
)
|
|
);
|
|
|
|
$urls = array();
|
|
foreach ( $result as $item ) {
|
|
|
|
$url = parse_url( $item->referred );
|
|
|
|
if ( empty( $url['host'] ) || stristr( get_bloginfo( 'url' ), $url['host'] ) ) {
|
|
continue;
|
|
}
|
|
|
|
$urls[] = $url['scheme'] . '://' . $url['host'];
|
|
}
|
|
|
|
$get_urls = array_count_values( $urls );
|
|
|
|
$total = count( $get_urls );
|
|
}
|
|
|
|
?>
|
|
<div class="wrap">
|
|
<h2><?php _e( 'Top Referring Sites', 'wp-statistics' ); ?></h2>
|
|
|
|
<div><?php wp_statistics_date_range_selector(
|
|
WP_Statistics::$page['referrers'],
|
|
$daysToDisplay,
|
|
null,
|
|
null,
|
|
$referr_field
|
|
); ?></div>
|
|
|
|
<div class="clear"/>
|
|
|
|
<ul class="subsubsub">
|
|
<?php if ( $referr ) { ?>
|
|
<li class="all"><a <?php if ( ! $referr ) {
|
|
echo 'class="current"';
|
|
} ?>href="?page=<?php echo WP_Statistics::$page['referrers'] . $date_args; ?>"><?php _e(
|
|
'All',
|
|
'wp-statistics'
|
|
); ?></a>
|
|
</li>
|
|
|
|
|
<li>
|
|
<a class="current"
|
|
href="?page=<?php echo WP_Statistics::$page['referrers']; ?>&referr=<?php echo $WP_Statistics->html_sanitize_referrer(
|
|
$referr
|
|
) . $date_args; ?>"> <?php echo htmlentities( $title, ENT_QUOTES ); ?>
|
|
<span class="count">(<?php echo $total; ?>)</span></a></li>
|
|
<?php } else { ?>
|
|
<li class="all"><a <?php if ( ! $referr ) {
|
|
echo 'class="current"';
|
|
} ?>href="?page=<?php echo WP_Statistics::$page['referrers'] . $date_args; ?>"><?php _e(
|
|
'All',
|
|
'wp-statistics'
|
|
); ?>
|
|
<span class="count">(<?php echo $total; ?>)</span></a></li>
|
|
<?php } ?>
|
|
</ul>
|
|
<div class="postbox-container" id="last-log">
|
|
<div class="metabox-holder">
|
|
<div class="meta-box-sortables">
|
|
<div class="postbox">
|
|
<?php if ( $referr ) {
|
|
$paneltitle = sprintf(
|
|
__( 'Referring site: %s', 'wp-statistics' ),
|
|
$WP_Statistics->html_sanitize_referrer( $referr )
|
|
);
|
|
} else {
|
|
$paneltitle = __( 'Top Referring Sites', 'wp-statistics' );
|
|
}; ?>
|
|
<button class="handlediv" type="button" aria-expanded="true">
|
|
<span class="screen-reader-text"><?php printf(
|
|
__( 'Toggle panel: %s', 'wp-statistics' ),
|
|
$paneltitle
|
|
); ?></span>
|
|
<span class="toggle-indicator" aria-hidden="true"></span>
|
|
</button>
|
|
<h2 class="hndle"><span><?php echo $paneltitle; ?></h2>
|
|
|
|
<div class="inside">
|
|
<?php
|
|
echo "<div class='log-latest'>";
|
|
|
|
if ( $total > 0 ) {
|
|
// Initiate pagination object with appropriate arguments
|
|
$pagesPerSection = 10;
|
|
$options = array( 25, "All" );
|
|
$stylePageOff = "pageOff";
|
|
$stylePageOn = "pageOn";
|
|
$styleErrors = "paginationErrors";
|
|
$styleSelect = "paginationSelect";
|
|
|
|
$Pagination = new WP_Statistics_Pagination(
|
|
$total,
|
|
$pagesPerSection,
|
|
$options,
|
|
false,
|
|
$stylePageOff,
|
|
$stylePageOn,
|
|
$styleErrors,
|
|
$styleSelect
|
|
);
|
|
|
|
$start = $Pagination->getEntryStart();
|
|
$end = $Pagination->getEntryEnd();
|
|
|
|
if ( $referr ) {
|
|
if ( $WP_Statistics->get_option( 'search_converted' ) ) {
|
|
$result = $wpdb->get_results(
|
|
$wpdb->prepare(
|
|
"SELECT * FROM `{$wpdb->prefix}statistics_search` INNER JOIN `{$wpdb->prefix}statistics_visitor` on {$wpdb->prefix}statistics_search.`visitor` = {$wpdb->prefix}statistics_visitor.`ID` WHERE `host` = %s AND {$wpdb->prefix}statistics_visitor.`last_counter` BETWEEN %s AND %s ORDER BY `{$wpdb->prefix}statistics_search`.`ID` DESC LIMIT %d, %d",
|
|
$referr,
|
|
$rangestartdate,
|
|
$rangeenddate,
|
|
$start,
|
|
$end
|
|
)
|
|
);
|
|
}
|
|
|
|
foreach ( $result as $item ) {
|
|
echo "<div class='log-item'>";
|
|
echo "<div class='log-referred'><a href='?page=" .
|
|
WP_Statistics::$page['overview'] .
|
|
"&type=last-all-visitor&ip={$item->ip}'>" .
|
|
wp_statistics_icons( 'dashicons-visibility', 'visibility' ) .
|
|
"{$item->ip}</a></div>";
|
|
echo "<div class='log-ip'>" .
|
|
date( get_option( 'date_format' ), strtotime( $item->last_counter ) ) .
|
|
" - <a href='http://www.geoiptool.com/en/?IP={$item->ip}' target='_blank'>{$item->ip}</a></div>";
|
|
echo "<div class='clear'></div>";
|
|
echo "<a class='show-map' title='" .
|
|
__( 'Map', 'wp-statistics' ) .
|
|
"'><div class='dashicons dashicons-location-alt'></div></a>";
|
|
|
|
if ( array_search(
|
|
strtolower( $item->agent ),
|
|
array(
|
|
'chrome',
|
|
'firefox',
|
|
'msie',
|
|
'opera',
|
|
'safari',
|
|
)
|
|
) !== false
|
|
) {
|
|
$agent = "<img src='" .
|
|
plugins_url( 'wp-statistics/assets/images/' ) .
|
|
$item->agent .
|
|
".png' class='log-tools' title='{$item->agent}'/>";
|
|
} else {
|
|
$agent = "<div class='dashicons dashicons-editor-help'></div>";
|
|
}
|
|
|
|
echo "<div class='log-agent'><a href='?page=" .
|
|
WP_Statistics::$page['overview'] .
|
|
"&type=last-all-visitor&agent={$item->agent}'>{$agent}</a>";
|
|
echo $WP_Statistics->get_referrer_link( $item->referred, 100 ) . '</div>';
|
|
echo "</div>";
|
|
}
|
|
} else {
|
|
arsort( $get_urls );
|
|
$get_urls = array_slice( $get_urls, $start, $end );
|
|
|
|
$i = $start;
|
|
foreach ( $get_urls as $items => $value ) {
|
|
$i ++;
|
|
$referrer_html = $WP_Statistics->html_sanitize_referrer( $items );
|
|
$referrer_html = parse_url( $referrer_html )['host'];
|
|
echo "<div class='log-item'>";
|
|
echo "<div class='log-referred'>{$i} - <a href='?page=" .
|
|
WP_Statistics::$page['referrers'] .
|
|
"&referr=" .
|
|
$referrer_html .
|
|
$date_args .
|
|
"'>" .
|
|
$referrer_html .
|
|
"</a></div>";
|
|
echo "<div class='log-ip'>" .
|
|
__( 'References', 'wp-statistics' ) .
|
|
': ' .
|
|
number_format_i18n( $value ) .
|
|
'</div>';
|
|
echo "<div class='clear'></div>";
|
|
echo "<div class='log-url'>" .
|
|
$WP_Statistics->get_referrer_link( $items, 100 ) .
|
|
'</div>';
|
|
echo "</div>";
|
|
}
|
|
}
|
|
}
|
|
|
|
echo '</div>';
|
|
?>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="pagination-log">
|
|
<?php if ( $total > 0 ) {
|
|
echo $Pagination->display(); ?>
|
|
<p id="result-log"><?php printf(
|
|
__( 'Page %1$s of %2$s', 'wp-statistics' ),
|
|
$Pagination->getCurrentPage(),
|
|
$Pagination->getTotalPages()
|
|
); ?></p>
|
|
<?php } ?>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|