Esempio n. 1
0
 public function destroy($id)
 {
     $targetExpense = Expense::find($id);
     if ($targetExpense) {
         $targetExpense->delete();
         return $this->index();
     } else {
         return $this->index();
     }
 }
Esempio n. 2
0
 public function home()
 {
     $total = $this->User->query("SELECT SUM(amount) as total FROM expenses WHERE house_id='" . $this->Session->read("Auth.User.House") . "' AND user_id='" . $this->Session->read("Auth.User.id") . "' AND active=1");
     App::import('Model', 'Expense');
     $mExpense = new Expense();
     $expenses_id = $mExpense->query("SELECT expense_id FROM expenses_users WHERE user_id='" . $this->Session->read("Auth.User.id") . "'");
     $expenses_id = Set::classicExtract($expenses_id, '{n}.expenses_users.expense_id');
     $yourExpenses = $mExpense->find('all', array('conditions' => array('Expense.id' => $expenses_id, 'Expense.house_id' => $this->Session->read('Auth.User.House'), 'Expense.active' => 1)));
     $myTotal = 0.0;
     foreach ($yourExpenses as $expense) {
         $myTotal += $expense['Expense']['amount'] / count($expense['Perro']);
     }
     $totalP = $this->User->query("SELECT SUM(amount) as total FROM loans WHERE lender_id='" . $this->Session->read("Auth.User.id") . "' AND active=1");
     $total2P = $this->User->query("SELECT SUM(amount) as total FROM loans WHERE borrower_id='" . $this->Session->read("Auth.User.id") . "' AND active=1");
     $totalPaymentsP = $this->User->query("SELECT SUM(payments.amount) as total FROM payments, loans WHERE loans.id=payments.loan_id AND loans.lender_id='" . $this->Session->read("Auth.User.id") . "' AND loans.active=1 AND payments.active=1");
     $totalPayments2P = $this->User->query("SELECT SUM(payments.amount) as total FROM payments, loans WHERE loans.id=payments.loan_id AND loans.borrower_id='" . $this->Session->read("Auth.User.id") . "' AND loans.active=1 AND payments.active=1");
     $this->set(array('total' => $total[0][0]['total'], 'myTotal' => $myTotal, 'totalP' => $totalP['0']['0']['total'], 'total2P' => $total2P['0']['0']['total'], 'totalPaymentsP' => $totalPaymentsP['0']['0']['total'], 'totalPayments2P' => $totalPayments2P['0']['0']['total']));
 }
Esempio n. 3
0
 function delete($id = FALSE)
 {
     $expense = Expense::find($id);
     $expense->delete();
     $this->content_view = 'expenses/all';
     if (!$expense) {
         $this->session->set_flashdata('message', 'error:' . $this->lang->line('messages_delete_expense_error'));
     } else {
         $this->session->set_flashdata('message', 'success:' . $this->lang->line('messages_delete_expense_success'));
     }
     redirect('expenses');
 }
Esempio n. 4
0
 function item($id = FALSE)
 {
     if ($_POST) {
         unset($_POST['send']);
         $_POST = array_map('htmlspecialchars', $_POST);
         if ($_POST['name'] != "") {
             $_POST['name'] = $_POST['name'];
             $_POST['value'] = $_POST['value'];
             $_POST['type'] = $_POST['type'];
         } else {
             if ($_POST['item_id'] == "-") {
                 $this->session->set_flashdata('message', 'error:' . $this->lang->line('messages_add_item_error'));
                 redirect('invoices/view/' . $_POST['invoice_id']);
             } else {
                 $rebill = explode("_", $_POST['item_id']);
                 if ($rebill[0] == "rebill") {
                     $itemvalue = Expense::find_by_id($rebill[1]);
                     $_POST['name'] = $itemvalue->description;
                     $_POST['type'] = $_POST['item_id'];
                     $_POST['value'] = $itemvalue->value;
                     $itemvalue->rebill = 2;
                     $itemvalue->invoice_id = $_POST['invoice_id'];
                     $itemvalue->save();
                 } else {
                     $itemvalue = Item::find_by_id($_POST['item_id']);
                     $_POST['name'] = $itemvalue->name;
                     $_POST['type'] = $itemvalue->type;
                     $_POST['value'] = $itemvalue->value;
                 }
             }
         }
         $item = InvoiceHasItem::create($_POST);
         if (!$item) {
             $this->session->set_flashdata('message', 'error:' . $this->lang->line('messages_add_item_error'));
         } else {
             $this->session->set_flashdata('message', 'success:' . $this->lang->line('messages_add_item_success'));
         }
         redirect('invoices/view/' . $_POST['invoice_id']);
     } else {
         $this->view_data['invoice'] = Invoice::find($id);
         $this->view_data['items'] = Item::find('all', array('conditions' => array('inactive=?', '0')));
         $this->view_data['rebill'] = Expense::find('all', array('conditions' => array('project_id=? and (rebill=? or invoice_id=?)', $this->view_data['invoice']->project_id, 1, $id)));
         $this->theme_view = 'modal';
         $this->view_data['title'] = $this->lang->line('application_add_item');
         $this->view_data['form_action'] = 'invoices/item';
         $this->content_view = 'invoices/_item';
     }
 }
Esempio n. 5
0
 /**
  * Show the form for editing the specified expense.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $expense = Expense::find($id);
     $accounts = Account::all();
     return View::make('expenses.edit', compact('expense', 'accounts'));
 }
Esempio n. 6
0
 /**
  * Show the form for editing the specified expense.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $expense = Expense::find($id);
     return View::make('expenses.edit', compact('expense'));
 }
Esempio n. 7
0
 public function delete_destroy($object_id = false)
 {
     $expense = Expense::find($object_id);
     $expense->delete();
     return Redirect::to_action('expenses@index');
 }