public static function GetPostAndValidateTenancy($mTransactions) { ProTransactions::GetPostOnly($mTransactions); $mTransactions->validate(); $mTransactions->mPropertyDetail->validate(); if ($mTransactions->type == ProTransactions::FOR_RENT) { // it alway for rent if (!empty($mTransactions->mTenatDefault->user_id)) { $mTransactions->mTenatDefault->scenario = 'AgentAddTenantExitUid'; } $mTransactions->mTenatDefault->validate(); Users::validateDefaultTenant($mTransactions->mTenatDefault); } $cAction = Yii::app()->controller->action->id; if ($cAction == 'update' && ProTransactions::IsTenancyTransaction($mTransactions)) { if ($mTransactions->mBillTo->bill_to_id == ProTransactions::BILL_TO_SOLICITOR) { $mTransactions->mBillTo->scenario = 'CreateVendorPurchaserSolicitorSelected'; } elseif ($mTransactions->mBillTo->bill_to_id == ProTransactions::BILL_TO_EXTERNAL_CO_BROKE) { $mTransactions->mBillTo->scenario = 'ExternalCoBrokeSelected'; ProTransactionsBillTo::ResetVal($mTransactions->mBillTo); } $mTransactions->mBillTo->validate(); } ProTransactionsPropertyDocument::validateFile($mTransactions); if ($mTransactions->type == ProTransactions::FOR_RENT) { ProTransactions::validateLandlordTenant($mTransactions); } else { // for sale - validate for vendor and purcharser ProTransactions::validateVendorPurchaser($mTransactions); } }
// } // if (!empty($mTransactions->deposit_payable)) { // $mTransactions->deposit_payable = Listing::getformatPrice($mTransactions->deposit_payable); // } // co the cai nay khong can // if (!empty($mTransactions->mBillTo->commission_amount)) { // $mTransactions->mBillTo->commission_amount = Listing::getformatPrice($mTransactions->mBillTo->commission_amount); // } // // con 3 field: transacted_price, valuation_price, tenancy_amount // Nov 03, 2014 $mTransactions->mTenatDefault->scenario = 'AgentAddTenant'; $mTransactions->mPropertyDetail->scenario = 'CreateTransactionFromListing'; if (isset($_GET['list']) && $_GET['list'] == 'transaction') { $mTransactions->mPropertyDetail->scenario = 'CreateTransaction'; } if ($mTransactions->add_property == ProTransactions::ADD_UNLISTED) { $mTransactions->mPropertyDetail->scenario = 'CreateTransactionUnlisted'; $mTransactions->mTenatDefault->scenario = 'AgentAddTenantUnlisted'; } $mTransactions->mBillTo->scenario = 'CreateVendorPurchaser'; // $mTransactions->mPropertyDocument->scenario = 'UploadDocument'; $mTransactions->scenario = 'CreateTransaction'; // default for sale if ($mTransactions->type == ProTransactions::FOR_RENT) { $mTransactions->scenario = 'CreateTransactionForRent'; // for rent } // Dec 02, 2014 đã tạo 2 scenario cho phần thêm add property name Existing vs Unlisted // CreateTransactionForRentUnlisted, CreateTransactionForSaleUnlisted // Hiện tại thấy chưa cần tách ra nhiều scenario như vậy, nên chưa if else chỗ này... will ProTransactions::copyFromListingToTransaction($mTransactions); ProTransactions::convertToUserDate($mTransactions); // chưa làm phần update cho transaction?? // ProTransactions::convertToUserDate($mTransactions); } // xử lý bắt biến post và gọi validate cho các model, tách ra cho dễ nhìn public function GetPostAndValidate($mTransactions) { $mTransactions->attributes = $_POST['ProTransactions']; $mTransactions->mPropertyDetail->attributes = $_POST['ProTransactionsPropertyDetail'];