/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model = new LbExpenses(); $model->attributes; $idPV = false; if (isset($_REQUEST['idPV'])) { $idPV = $_REQUEST['idPV']; } // $documentModel = new LbDocument(); $customerModel = new LbExpensesCustomer(); $invoiceModel = new LbExpensesInvoice(); $bankaccountModel = new LbBankAccount(); $bankaccounts = $bankaccountModel->getBankAccount(Yii::app()->user->id); if (isset($_POST['LbExpenses']) && floatval($_POST['LbExpenses']['lb_expenses_amount']) != 0) { $LbExpenses = $_POST['LbExpenses']; $model->attributes = $LbExpenses; $model->lb_expenses_date = date('Y-m-d', strtotime($_POST['LbExpenses']['lb_expenses_date'])); if ($model->save()) { LbExpenses::model()->setExpensesNextNum(LbExpenses::model()->getExpensesNextNum()); //********** Upload document *************// $documents = CUploadedFile::getInstancesByName('documents'); // proceed if the images have been set $i = 0; if (isset($documents) && count($documents) > 0) { // go through each uploaded image foreach ($documents as $document => $doc) { $i++; // tach filename va duoi $temp = explode('.', $doc->name); $duoi = '.' . $temp[count($temp) - 1]; $lendduoi = strlen($temp[count($temp) - 1]) + 1; $filename = substr($doc->name, 0, strlen($doc->name) - $lendduoi); $encoded_filename = str_replace(' ', '_', $filename) . '_expenses' . $model->lb_record_primary_key . '_' . $i . $duoi; if ($doc->saveAs(Yii::getPathOfAlias('webroot') . '/uploads/' . $encoded_filename)) { // add it to the main model now $documentModel = new LbDocument(); $documentModel->lb_document_parent_type = LbDocument::LB_DOCUMENT_PARENT_TYPE_EXPENSES; $documentModel->lb_document_parent_id = $model->lb_record_primary_key; $documentModel->lb_document_url = "/uploads/" . $encoded_filename; //it might be $img_add->name for you, filename is just what I chose to call it in my model $documentModel->lb_document_name = $doc->name; // this links your picture model to the main model (like your user, or profile model) $documentModel->lb_document_encoded_name = $encoded_filename; $documentModel->save(); // DONE } } } // *** End upload document *** // // ********* Add cusotmer **********// if (isset($_POST["LbExpensesCustomer"])) { $LbExpensesCustomer = $_POST['LbExpensesCustomer']; if (isset($LbExpensesCustomer['lb_customer_id']) && is_array($LbExpensesCustomer['lb_customer_id']) && count($LbExpensesCustomer['lb_customer_id']) > 0) { foreach ($LbExpensesCustomer['lb_customer_id'] as $customer) { if ($customer > 0) { $expensesCustomer = new LbExpensesCustomer(); $expensesCustomer->lb_expenses_id = $model->lb_record_primary_key; $expensesCustomer->lb_customer_id = $customer; $expensesCustomer->save(); } } } } // *** End add customer *** // // ********* Choose invoice **********// if (isset($_POST["LbExpensesInvoice"])) { $LbExpensesInvoice = $_POST['LbExpensesInvoice']; if (isset($LbExpensesInvoice['lb_invoice_id']) && is_array($LbExpensesInvoice['lb_invoice_id']) && count($LbExpensesInvoice['lb_invoice_id']) > 0) { foreach ($LbExpensesInvoice['lb_invoice_id'] as $invoice) { if ($invoice > 0) { $expensesInvoice = new LbExpensesInvoice(); $expensesInvoice->lb_expenses_id = $model->lb_record_primary_key; $expensesInvoice->lb_invoice_id = $invoice; $expensesInvoice->save(); } } } } //Insert Tax if (isset($_POST["LbExpensesTax"])) { $LbExpensesTax = $_POST['LbExpensesTax']; if (isset($LbExpensesTax['lb_tax_id']) && is_array($LbExpensesTax['lb_tax_id']) && count($LbExpensesTax['lb_tax_id']) > 0) { foreach ($LbExpensesTax['lb_tax_id'] as $tax) { if ($tax > 0) { $expensesTax = new LbExpensesTax(); $expensesTax->lb_expenses_id = $model->lb_record_primary_key; $expensesTax->lb_tax_id = $tax; $amount = $_POST['LbExpenses']['lb_expenses_amount']; $information_tax = LbTax::model()->findByPk($tax); $tax_value = $information_tax['lb_tax_value']; $expensesTax->lb_expenses_tax_total = $amount * $tax_value / 100; $expensesTax->save(); } } } } // *** End add invoice *** // //add ex in payment voucher if ($idPV) { $PvExpenses = new LbPvExpenses(); $PvExpenses->lb_expenses_id = $model->lb_record_primary_key; $PvExpenses->lb_payment_voucher_id = $idPV; $PvExpenses->insert(); } // echo '<pre>'; // print_r($_POST["LbExpensesTax"]); $this->redirect(array('view', 'id' => $model->lb_record_primary_key)); return; } } $this->render('create', array('model' => $model, 'customerModel' => $customerModel, 'invoiceModel' => $invoiceModel, 'bankaccounts' => $bankaccounts)); }