/**
  * Gets user subscription expiration date
  *
  * @param UserSubscription $userSubscription User subscription
  *
  * @return DateTime
  */
 public function getExpirationDate(UserSubscription $userSubscription)
 {
     $now = new \DateTime('now');
     $createdAt = $userSubscription->getCreatedAt();
     // diffrence in days between subscription create date
     // and actual activation date
     $daysDiffrence = (int) $now->diff($createdAt)->format("%a");
     $startDate = $createdAt ?: $now;
     $days = $userSubscription->getSubscription()->getRange();
     $days = $days + $daysDiffrence;
     $timeSpan = new \DateInterval('P' . $days . 'D');
     return $startDate->add($timeSpan);
 }