Example #1
0
 /**
  * Set the singleton instance if it is not yet defined.
  *
  * @since  1.0.0
  */
 public function store_singleton()
 {
     if ($this->_in_cache) {
         return;
     }
     MS_Factory::set_singleton($this);
 }
 /**
  * Add the simulated relationship to the current users memberships.
  *
  * @since  1.0.0
  */
 public function add_simulation_membership($subscriptions)
 {
     $subscription = false;
     if (!isset($subscriptions[$this->membership_id])) {
         $this->start_simulation();
         $subscription = MS_Model_Relationship::create_ms_relationship($this->membership_id, 0, 'simulation');
     }
     if (is_a($subscription, 'MS_Model_Relationship')) {
         $membership = $subscription->get_membership();
         if (MS_Model_Membership::PAYMENT_TYPE_PERMANENT == $membership->payment_type) {
             $subscription->expire_date = '2999-12-31';
         }
         $key = 'ms_model_relationship--1';
         MS_Factory::set_singleton($subscription, $key);
         $this->_subscription = $subscription;
         $subscriptions[$this->membership_id] = $subscription;
     }
     return $subscriptions;
 }