mirror of
https://github.com/10h30/wp-strava.git
synced 2026-06-05 15:10:01 +09:00
Added Hide Time option;
Fixed author tags
This commit is contained in:
@@ -33,7 +33,10 @@ class WPStrava_LatestActivities {
|
||||
if ( ! empty( $activity->start_date_local ) ) {
|
||||
$unixtime = strtotime( $activity->start_date_local );
|
||||
// Translators: Shows something like "On <date> <[went 10 miles] [during 2 hours] [climbing 100 feet]>."
|
||||
$response .= sprintf( __( 'On %1$s %2$s', 'wp-strava' ), date_i18n( get_option( 'date_format' ), $unixtime ), date_i18n( get_option( 'time_format' ), $unixtime ) );
|
||||
$response .= sprintf( __( 'On %1$s %2$s', 'wp-strava' ),
|
||||
date_i18n( get_option( 'date_format' ), $unixtime ),
|
||||
self::get_activity_time( $unixtime )
|
||||
);
|
||||
}
|
||||
|
||||
if ( is_numeric( $args['strava_club_id'] ) ) {
|
||||
@@ -54,4 +57,20 @@ class WPStrava_LatestActivities {
|
||||
$response .= '</ul>';
|
||||
return $response;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the activity time, possibly hiding it.
|
||||
*
|
||||
* @param int $unixtime
|
||||
* @return string Formatted time, or empty string depending on hide_time option.
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public static function get_activity_time( $unixtime ) {
|
||||
if ( WPStrava::get_instance()->settings->hide_time ) {
|
||||
return '';
|
||||
}
|
||||
|
||||
return date_i18n( get_option( 'time_format' ), $unixtime );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -125,6 +125,10 @@ class WPStrava_Settings {
|
||||
add_settings_section( 'strava_options', __( 'Options', 'wp-strava' ), null, 'wp-strava' );
|
||||
add_settings_field( 'strava_som', __( 'System of Measurement', 'wp-strava' ), array( $this, 'print_som_input' ), 'wp-strava', 'strava_options' );
|
||||
|
||||
// Hide Time Option.
|
||||
register_setting( $this->option_page, 'strava_hide_time', array( $this, 'sanitize_hide_time' ) );
|
||||
add_settings_field( 'strava_hide_time', __( 'Hide Activity Time', 'wp-strava' ), array( $this, 'print_hide_time_input' ), 'wp-strava', 'strava_options' );
|
||||
|
||||
// Clear cache.
|
||||
register_setting( $this->option_page, 'strava_cache_clear', array( $this, 'sanitize_cache_clear' ) );
|
||||
add_settings_section( 'strava_cache', __( 'Cache', 'wp-strava' ), null, 'wp-strava' );
|
||||
@@ -336,6 +340,33 @@ class WPStrava_Settings {
|
||||
return $som;
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the Hide Time Checkbox.
|
||||
*
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function print_hide_time_input() {
|
||||
?>
|
||||
<input type="checkbox" id="strava_hide_time" name="strava_hide_time" <?php checked( $this->hide_time, 'on' ); ?>/>
|
||||
<?php
|
||||
}
|
||||
|
||||
/**
|
||||
* Sanitize the Hide Time Checkbox.
|
||||
*
|
||||
* @param string $checked 'on' or null.
|
||||
* @return string 'on' if checked.
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function sanitize_hide_time( $checked ) {
|
||||
if ( 'on' === $checked ) {
|
||||
return $checked;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public function print_clear_input() {
|
||||
?>
|
||||
<input type="checkbox" id="strava_cache_clear" name="strava_cache_clear" />
|
||||
|
||||
+10
-2
@@ -23,8 +23,8 @@ This plugin uses the Strava API to embed maps and activity for athletes and club
|
||||
Also takes the following optional parameters:
|
||||
|
||||
* som - english/metric (system of measure - override from default setting).
|
||||
* map_width - width (width of image in pixels).
|
||||
* map_height - height (height of image in pixels).
|
||||
* map_width - width (width of image in pixels). Note both width and height parameters are limited to 640px except on premium API plans: https://developers.google.com/maps/documentation/maps-static/dev-guide#Imagesizes
|
||||
* map_height - height (height of image in pixels). See note above on max height.
|
||||
* athlete_token - specify a different athlete (you can copy this value from https://www.strava.com/settings/api or the wp-strava settings page at /wp-admin/options-general.php?page=wp-strava-options).
|
||||
* markers - Display markers at the start/finish point (true/false, defaults to false).
|
||||
* image_only - Display only the map image and not the table (true/false, defaults to false).
|
||||
@@ -79,6 +79,13 @@ WP-Strava caches activity for one hour so your site doesn't hit the Strava API o
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 1.7.1 =
|
||||
|
||||
Added PHPUnit tests for all System of Measure calculations.
|
||||
Fixed swimpace calculation.
|
||||
Fixed seconds display on pace.
|
||||
Added Hide Activity Time option to hide time display from Latest Activities List.
|
||||
|
||||
= 1.7.0 =
|
||||
|
||||
Added Sebastian Erb to contributors.
|
||||
@@ -88,6 +95,7 @@ Added 'image_only' attribute to [activity] and [route] shortcode to optionally r
|
||||
Added boolean filtering to shortcodes to prevent false-positive "truthiness" to a shortcode attribute like image_only="false".
|
||||
Removed 'max-width: none' from activity image to make it responsive.
|
||||
|
||||
|
||||
= 1.6.0 =
|
||||
|
||||
Added class autoloader (removed composer autoloader).
|
||||
|
||||
@@ -17,7 +17,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 10,000 meters is 6.21 miles using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_distance() {
|
||||
@@ -28,7 +28,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 6.213712 miles is 10,000.00 meters using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_distance_inverse() {
|
||||
@@ -39,7 +39,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 6.705 meters per second is 15.00 mph using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_speed() {
|
||||
@@ -50,7 +50,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 2.68224 meters per second is a 10:00 minute/mile pace using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_pace() {
|
||||
@@ -61,7 +61,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 60.96 meters is 200.00 feet using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_elevation() {
|
||||
@@ -72,7 +72,7 @@ class WPStrava_SOMEnglishTest extends TestCase {
|
||||
/**
|
||||
* Test that 4805 seconds is 01:20:05 time (H:i:s) using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_time() {
|
||||
|
||||
@@ -17,7 +17,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 10,000 meters is 10.00 kilometers using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_distance() {
|
||||
@@ -28,7 +28,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 42.195 km is 42,195.00 meters using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_distance_inverse() {
|
||||
@@ -39,7 +39,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 4.47 meters per second is 16.09 kmh using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_speed() {
|
||||
@@ -50,7 +50,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 2.2352 meters per second is a 7:27 minute/kilometer pace using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_pace() {
|
||||
@@ -61,7 +61,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 70 meters is 70.00 meters using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_elevation() {
|
||||
@@ -72,7 +72,7 @@ class WPStrava_SOMMetricTest extends TestCase {
|
||||
/**
|
||||
* Test that 1.66 meters per second is a 1:00 minute/100m pace using both string and float inputs.
|
||||
*
|
||||
* @author Justin Foell <justin.foell@webdevstudios.com>
|
||||
* @author Justin Foell <justin@foell.org>
|
||||
* @since 1.7.1
|
||||
*/
|
||||
public function test_swimpace() {
|
||||
|
||||
+4
-1
@@ -1,6 +1,9 @@
|
||||
<?php
|
||||
|
||||
if ( ! defined( 'WPSTRAVA_PLUGIN_DIR' ) ) define( 'WPSTRAVA_PLUGIN_DIR', dirname( __FILE__ ) . '/../' );
|
||||
if ( ! defined( 'WPSTRAVA_PLUGIN_DIR' ) ) {
|
||||
define( 'WPSTRAVA_PLUGIN_DIR', dirname( __FILE__ ) . '/../' );
|
||||
}
|
||||
|
||||
require_once dirname( __FILE__ ) . '/../lib/autoload.php';
|
||||
require_once dirname( __FILE__ ) . '/../vendor/autoload.php';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user