Changeset View
Changeset View
Standalone View
Standalone View
src/app/Observers/TransactionObserver.php
Show All 9 Lines | class TransactionObserver | ||||
* Ensure the transaction ID is a custom ID (uuid). | * Ensure the transaction ID is a custom ID (uuid). | ||||
* | * | ||||
* @param \App\Transaction $transaction The transaction object | * @param \App\Transaction $transaction The transaction object | ||||
* | * | ||||
* @return void | * @return void | ||||
*/ | */ | ||||
public function creating(Transaction $transaction): void | public function creating(Transaction $transaction): void | ||||
{ | { | ||||
while (true) { | |||||
$allegedly_unique = \App\Utils::uuidStr(); | |||||
if (!Transaction::find($allegedly_unique)) { | |||||
$transaction->{$transaction->getKeyName()} = $allegedly_unique; | |||||
break; | |||||
} | |||||
} | |||||
if (!isset($transaction->user_email)) { | if (!isset($transaction->user_email)) { | ||||
$transaction->user_email = \App\Utils::userEmailOrNull(); | $transaction->user_email = \App\Utils::userEmailOrNull(); | ||||
} | } | ||||
} | } | ||||
} | } |