diff options
Diffstat (limited to 'app/frontend/db/DBConnection.php')
-rw-r--r-- | app/frontend/db/DBConnection.php | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/app/frontend/db/DBConnection.php b/app/frontend/db/DBConnection.php new file mode 100644 index 0000000..92ab0fb --- /dev/null +++ b/app/frontend/db/DBConnection.php @@ -0,0 +1,28 @@ +<?php + +Prado::using('Application.db.DBTransaction'); +Prado::using('System.Data.TDbConnection'); + +class DBConnection extends TDbConnection { + + private $_transaction = NULL; + public function getCurrentTransaction() { + if (!$this->_transaction->getActive()) { + $this->_transaction = NULL; + } + return $this->_transaction; + } + + public function beginTransaction() { + if ($this->_transaction && $this->_transaction->getActive()) { + $this->_transaction->beginNestedTransaction(); + } + else { + $this->_transaction = parent::beginTransaction(); + } + return $this->_transaction; + } + +} + +?> |