2013-03-31 21:28:49 -05:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
abstract class WPStrava_SOM {
|
|
|
|
|
|
2017-05-26 10:53:24 -05:00
|
|
|
public static function get_som( $som = null ) {
|
2013-03-31 21:28:49 -05:00
|
|
|
$som = $som ? $som : WPStrava::get_instance()->settings->som;
|
2017-12-26 14:18:13 -06:00
|
|
|
if ( 'english' === $som ) {
|
2013-03-31 21:28:49 -05:00
|
|
|
require_once WPSTRAVA_PLUGIN_DIR . 'lib/SOMEnglish.class.php';
|
|
|
|
|
return new WPStrava_SOMEnglish();
|
2017-12-26 14:18:13 -06:00
|
|
|
} else { // Default to metric.
|
2014-11-01 22:53:32 -05:00
|
|
|
require_once WPSTRAVA_PLUGIN_DIR . 'lib/SOMMetric.class.php';
|
|
|
|
|
return new WPStrava_SOMMetric();
|
2013-03-31 21:28:49 -05:00
|
|
|
}
|
2017-05-10 13:52:49 -05:00
|
|
|
|
2013-03-31 21:28:49 -05:00
|
|
|
}
|
2017-05-10 13:52:49 -05:00
|
|
|
|
2013-03-31 21:28:49 -05:00
|
|
|
abstract public function distance( $m );
|
|
|
|
|
abstract public function distance_inverse( $dist );
|
|
|
|
|
abstract public function get_distance_label();
|
|
|
|
|
abstract public function speed( $mps );
|
|
|
|
|
abstract public function get_speed_label();
|
|
|
|
|
abstract public function elevation( $m );
|
|
|
|
|
abstract public function get_elevation_label();
|
|
|
|
|
|
2013-04-07 17:56:07 -05:00
|
|
|
public function time( $seconds ) {
|
|
|
|
|
return date( 'H:i:s', mktime( 0, 0, $seconds ) );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function get_time_label() {
|
|
|
|
|
return __( 'hours', 'wp-strava' );
|
|
|
|
|
}
|
2017-05-10 13:52:49 -05:00
|
|
|
}
|