Example #1
0
 /**
  * Construct context
  * @var int $activityID
  * @var int $accountID
  */
 public function __construct($activityID, $accountID)
 {
     $Factory = new Factory((int) $accountID);
     $this->Activity = $Factory->activity((int) $activityID);
     $this->Trackdata = $Factory->trackdata((int) $activityID);
     $this->Swimdata = $Factory->swimdata((int) $activityID);
     $this->Route = $this->Activity->get(Activity\Entity::ROUTEID) ? $Factory->route($this->Activity->get(Activity\Entity::ROUTEID)) : null;
     $this->HRV = $Factory->hrv((int) $activityID);
     $this->Sport = $Factory->sport($this->Activity->sportid());
     $this->Swimdata->fillDistanceArray($this->Trackdata);
     $this->Swimdata->fillSwolfArray($this->Trackdata);
     $this->Dataview = new Dataview($this->Activity);
 }
Example #2
0
 /**
  * @return string
  */
 public function mapIcon()
 {
     if ($this->Activity->get(Activity\Entity::ROUTEID) > 0) {
         $Icon = new Icon(Icon::MAP_ARROW);
         $Icon->setTooltip(__('Route data available'));
         return $Icon->code();
     }
     return '';
 }
Example #3
0
 /**
  * @param enum $trackdataKey
  * @param enum $activityKey
  */
 protected function removeFromActivityIfValueIsEqualToAverage($trackdataKey, $activityKey)
 {
     // TODO: this does not use a filter for low values as ParserAbstractSingle does
     $dataArray = $this->Trackdata->get($trackdataKey);
     $dataAverage = round(array_sum($dataArray) / count($dataArray));
     if ($this->Activity->get($activityKey) == $dataAverage) {
         $this->Activity->set($activityKey, '');
     }
 }
Example #4
0
 /**
  * Delete route
  */
 protected function deleteRoute()
 {
     if ($this->Object->get(Model\Activity\Entity::ROUTEID) > 0) {
         // TODO: check if route was uniquely used
         // For the moment, routes are created uniquely, so that's right.
         $Deleter = new Model\Route\Deleter($this->PDO, new Model\Route\Entity(array('id' => $this->Object->get(Model\Activity\Entity::ROUTEID))));
         $Deleter->setAccountID($this->AccountID);
         $Deleter->delete();
     }
 }
Example #5
0
 /**
  * Construct updater
  * @param \PDO $connection
  * @param int $accountID
  * @param \Runalyze\Model\Activity\Entity $activity
  * @param \Runalyze\Model\Factory $factory
  */
 public function __construct(\PDO $connection, $accountID, Entity $activity, Model\Factory $factory)
 {
     $this->PDO = $connection;
     $this->AccountID = $accountID;
     $this->Activity = $activity;
     $this->OldActivity = clone $activity;
     $this->Trackdata = $factory->trackdata($activity->id());
     $this->OldTrackdata = clone $this->Trackdata;
     $this->Route = $factory->route($activity->get(Entity::ROUTEID));
     $this->OldRoute = clone $this->Route;
     // TODO: What's with STRIDE_LENGTH and VERTICAL_RATIO?
     // - so far, there are updateStrideLength() and updateVerticalRatio() in Activity\Updater
     $this->ActivityKeysForTrackdataKeys = [Model\Trackdata\Entity::HEARTRATE => Model\Activity\Entity::HR_AVG, Model\Trackdata\Entity::CADENCE => Model\Activity\Entity::CADENCE, Model\Trackdata\Entity::VERTICAL_OSCILLATION => Model\Activity\Entity::VERTICAL_OSCILLATION, Model\Trackdata\Entity::GROUNDCONTACT => Model\Activity\Entity::GROUNDCONTACT, Model\Trackdata\Entity::POWER => Model\Activity\Entity::POWER, Model\Trackdata\Entity::TEMPERATURE => Model\Activity\Entity::TEMPERATURE];
 }