Esempio n. 1
0
 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'];