function onOrderCreated($order_id)
 {
     $email = modApiFunc('Checkout', 'getCustomerAttributeValue', $order_id, 'billinginfo', 'default', 'Email');
     if (!modApiFunc('Users', 'isValidEmail', $email)) {
         return;
     }
     Subscriptions::setCustomerSubscribedEmail($email);
     $mode = modApiFunc('Settings', 'getParamValue', 'SUBSCRIPTIONS', 'CHECKOUT_SUBSCRIBE_MODE');
     if ($mode == 'AUTO') {
         $signed_id = modApiFunc('Customer_Account', 'getCurrentSignedCustomer') !== null;
         $access = array(SUBSCRIPTION_TOPIC_FULL_ACCESS, $signed_id ? SUBSCRIPTION_TOPIC_REGISTERED_ONLY : SUBSCRIPTION_TOPIC_GUEST_ONLY);
         $topics_ids = execQuery('SUBSCR_GET_AUTO_SUBSCRIBE_TOPICS', array('access' => $access));
         if (!empty($topics_ids)) {
             foreach (array_keys($topics_ids) as $i) {
                 $topics_ids[$i] = $topics_ids[$i]['topic_id'];
             }
             Subscriptions::subscribeEmails($topics_ids, $email);
         }
     } elseif ($mode == 'MANUAL') {
         $prerequisiteValidationResults = modApiFunc('Checkout', 'getPrerequisiteValidationResults', 'subscriptionTopics');
         $ids = @$prerequisiteValidationResults['validatedData']['Topics']['value'];
         $topics_ids = empty($ids) ? array() : explode(',', $ids);
         if (!empty($topics_ids)) {
             Subscriptions::subscribeEmails($topics_ids, $email);
         }
     }
     $order = execQuery('SELECT_BASE_ORDER_INFO', array('order_id' => $order_id));
     if (!empty($order)) {
         $params = array('customer_id' => $order[0]['person_id'], 'email' => $email);
         execQuery('SUBSCR_LINK_SUBSCRIPTION_TO_CUSTOMER', $params);
     }
 }