static function create_from_pptxn($pptxn_id) { $t = new PayPalTxn($pptxn_id); # if it already has a payment_id, stop here and just return that id if ($t->payment_id() > 0) { return $t->payment_id(); } $student_id = $t->student_id(); if ($student_id === false) { return false; } $set = array('student_id' => $student_id, 'created_at' => 'NOW()'); $money = $t->money(); $set['currency'] = $money->code; $set['millicents'] = $money->millicents; $info = $t->infoarray(); if (!isset($info['item_number'])) { return false; } $d = new Document($info['item_number']); if ($d->failed()) { return false; } $set['document_id'] = $d->id; $p = new Payment(false); $payment_id = $p->add($set); $t->set(array('payment_id' => $payment_id)); return $payment_id; }