Example #1
0
 function enroll_user2($user)
 {
     $list = "";
     /*
     * 
      stdClass Object
      (
      [first_name] => Test
      [last_name] => User
      [billing_name] => John Connair
      [addr] => Some Address2
      [city] => Some city2
      [state] => 10
      [country] => 234
      [zip] => 6902
      [inst] => n/a
      [phone] => 3802
      [email] => saalax2@ambro.com
      [cardnumber] => 234123412341211
      [cvv] => 2254
      [exp_month] => 07
      [exp_year] => 2021
      [come_from] => 0
      [courseid] => 45
      [slotid] => 730
      [amount] => 450
      )
     * 
     */
     //echo "<pre>";
     //print_r($user);
     //echo "</pre>";
     //die();
     $signup_status = $this->enroll->single_signup($user);
     if ($signup_status === true) {
         $names = explode(" ", $user->billing_name);
         if (count($names) == 2) {
             $fisrtname = $names[0];
             $lastname = $names[1];
         }
         // end if
         if (count($names) == 3) {
             $fisrtname = $names[0] . " " . $names[1];
             $lastname = $names[2];
         }
         // end if
         $item = substr($this->get_course_name($user->courseid), 0, 30);
         $order = new stdClass();
         $order->cds_name = "{$fisrtname}/{$lastname}";
         $order->cds_address_1 = $user->addr;
         $order->cds_city = $user->city;
         $order->cds_state = $user->state;
         $order->cds_zip = $user->zip;
         $order->cds_email = $user->email;
         $order->phone = $user->phone;
         $order->cds_cc_number = $user->cardnumber;
         $order->cds_cc_exp_month = $user->exp_month;
         $order->cds_cc_exp_year = $user->exp_year;
         $order->sum = $user->amount;
         $order->cvv = $user->cvv;
         $order->item = $item;
         $order->group = 0;
         $pr = new ProcessPayment();
         $status = $pr->make_transaction2($order);
         if ($status === false) {
             $this->delete_user($user->email);
             $list .= "<div class='container-fluid' style='text-align:center;'>";
             $list .= "<span class='span8' style='color:red;font-weight:bold;'>Transaction failed. Credit card declined.</span>";
             $list .= "</div>";
         } else {
             $mailer = new Mailer();
             $renew_fee = $this->get_renew_fee();
             // Create compatible object fields
             $userid = $this->get_user_id_by_email($user->email);
             //echo "User id: ".$userid."<br>";
             $user_detailes = $this->get_user_detailes($userid);
             //echo "<br>----------------------<br>";
             //print_r($user_detailes);
             //echo "<br>----------------------<br>";
             $user->userid = $userid;
             $user->card_no = $user->cardnumber;
             $user->sum = $user->amount;
             $user->transid = $status['trans_id'];
             $user->auth_code = $status['auth_code'];
             $user->pwd = $user_detailes->purepwd;
             $user->payment_amount = $user->amount;
             $user->card_holder = $user->billing_name;
             $user->card_month = $user->exp_month;
             $user->card_year = $user->exp_year;
             $user->signup_first = $user->first_name;
             $user->signup_last = $user->last_name;
             $this->confirm_user($user->email);
             $this->add_payment_to_db($user);
             // adds payment result to DB
             $mailer->send_payment_confirmation_message($user);
             $list .= "<div class='container-fluid' style='text-align:center;'>";
             if ($user->sum != $renew_fee) {
                 $list .= "<span class='span8'>Payment is successful. Thank you! You can print your registration data <a href='https://" . $_SERVER['SERVER_NAME'] . "/lms/custom/invoices/registrations/{$user->email}.pdf' target='_blank'>here.</a></span>";
             } else {
                 $list .= "<span class='span8'>Payment is successful. Thank you! Please use Renew Certificate option from <a href='https://" . $_SERVER['SERVER_NAME'] . "/lms/my' target='_blank'>your Dashboard</a></span>";
             }
             // end else
             $list .= "</div>";
             $this->enroll->add_user_to_course_schedule($user->userid, $user);
         }
         // end else
     } else {
         // We do not show this error to user
         //$list.="<div class='container-fluid' style='text-align:center;'>";
         //$list.="<span class='span8'>Signup error happened </span>";
         //$list.="</div>";
     }
     return $list;
 }