/var/www/vhosts/ihelp.ro/httpdocs/src/Controller/Admin
NameSizeModeActions
AdminController.php57720644editdlrm
BankAccountsController.php31440644editdlrm
BannersController.php45400644editdlrm
CategoriesController.php44980644editdlrm
CauseNewsController.php21450644editdlrm
CausesController.php87590644editdlrm
CronsController.php18000644editdlrm
DashboardController.php10620644editdlrm
DocumentsController.php36490644editdlrm
DonationsController.php5590644editdlrm
GalleryImagesController.php32460644editdlrm
OrdersController.php44760644editdlrm
ProductsController.php56420644editdlrm
ProposedCausesController.php33390644editdlrm
SettingsController.php31570644editdlrm
SponsorsActivitiesController.php40030644editdlrm
SponsorsController.php36470644editdlrm
TagsController.php26520644editdlrm
UsersController.php82440644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/src/Controller/Admin/CausesController.php (8759B)
paginate = [ 'limit' => ADMIN_PAGE_LIMIT, 'contain' => ['Users', 'Users.Profiles'], 'conditions' => $conditions, 'sortableFields' => ['Causes.id', 'Causes.user_id', 'Causes.name', 'Causes.donation_sum', 'Causes.donation_amount', 'Causes.date_start', 'Causes.date_end', 'Causes.order_count', 'Causes.product_count', 'Causes.is_active', 'Causes.created'] ]; $causes = $this->paginate($this->Causes); $this->set(compact('causes')); } /** * View Products method */ public function view($id = null) { if (!empty($id) && is_numeric($id)) { $this->paginate = [ 'limit' => ADMIN_PAGE_LIMIT, 'contain' => ['Users', 'Users.Profiles'], 'sortableFields' => ['Products.name', 'Profiles.first_name', 'Products.price_min', 'Products.price', 'Products.stock', 'Products.is_active'] ]; $this->loadModel('Products'); $products = $this->paginate($this->Products->find() ->contain(['Users', 'UserAddresses']) ->where(['Products.cause_id' => $id])); } else { $this->Flash->error(__('Oops. Please, try again.')); return $this->redirect(['prefix' => 'Admin', 'controller' => 'Causes', 'action' => 'index']); } $causeId = $id; $this->set(compact('products', 'causeId')); } /** * View Products method */ public function viewDirectDonation($id = null, $return = null) { $conditions = []; /* Start Filters */ $filter = new FilterForm(); $filter->date_from = $this->request->getQuery('date_from') ? $this->request->getQuery('date_from') : date('Y-m-d', strtotime("-30 day")); if (!empty($filter->date_from)) { $conditions['AND'][] = ["Donations.created >=" => date('Y-m-d', strtotime($filter->date_from))]; } $filter->date_until = $this->request->getQuery('date_until') ? $this->request->getQuery('date_until') : date('Y-m-d'); if (!empty($filter->date_until)) { $conditions['AND'][] = ["Donations.created <" => date('Y-m-d', strtotime($filter->date_until . " +1day"))]; } /* End Filters */ $contain = ['Users', 'Causes', 'Transactions']; $conditions[] = ['Donations.cause_id' => $id]; $query = $this->fetchTable('Donations')->find()->contain($contain)->where($conditions); if ($return) { # for export return $query; } $donations = $this->paginate($query); $causeId = $id; $this->set(compact('donations', 'causeId', 'filter')); } /** * Add method */ public function add() { $cause = $this->Causes->newEmptyEntity(); if ($this->request->is('post')) { $cause->user_id = $this->request->getSession()->read('Auth.id'); $cause = $this->Causes->patchEntity($cause, $this->request->getData()); if ($this->Causes->save($cause)) { $this->Flash->success(__('The cause has been saved.')); return $this->redirect(['prefix' => 'Admin', 'controller' => 'Causes', 'action' => 'editGallery', $cause->uuid]); } $this->Flash->error(__('The cause could not be saved. Please, try again.')); } $tags = $this->Causes->Tags->find('list', ['limit' => 200]) ->where(['Tags.is_active' => true]); $this->set(compact('cause', 'tags')); } /** * Edit method */ public function edit($id = null) { if (!empty($id) && is_numeric($id)) { $cause = $this->Causes->get($id, [ 'contain' => ['Tags'], ]); if ($this->request->is(['patch', 'post', 'put'])) { $cause = $this->Causes->patchEntity($cause, $this->request->getData()); if ($this->Causes->save($cause)) { $this->Flash->success(__('The cause has been saved.')); return $this->redirect(['prefix' => 'Admin', 'controller' => 'Causes', 'action' => 'edit', $id]); } $this->Flash->error(__('The cause could not be saved. Please, try again.')); } } else { $this->Flash->error(__('Oops. Please, try again.')); return $this->redirect(['prefix' => 'Admin', 'controller' => 'Causes', 'action' => 'index']); } $tags = $this->Causes->Tags->find('list', ['limit' => 200])->where(['Tags.is_active' => true]); $this->set(compact('cause', 'tags')); } /** * Edit method */ public function editGallery($uuid = null) { if (!empty($uuid)) { $cause = $this->Causes->find() ->where(['uuid' => $uuid]) ->first(); $model = $this->modelClass; $foreignUuid = $cause->uuid; $this->loadModel('GalleryImages'); $images = $this->GalleryImages->find() ->contain(['Causes']) ->where(['foreign_key' => $cause->id, 'model' => $model])->toArray(); } else { $this->Flash->error(__('A apărut o problemă. Vă rugăm să încercați din nou')); return $this->redirect(['prefix' => 'Dashboard', 'controller' => 'Causes', 'action' => 'index']); } $this->set(compact('cause', 'images', 'model', 'foreignUuid')); } /** * Edit method */ public function editDocs($uuid = null) { if (!empty($uuid)) { $cause = $this->Causes->find() ->where(['uuid' => $uuid]) ->first(); $model = $this->modelClass; $foreignUuid = $cause->uuid; $this->loadModel('Documents'); $documents = $this->Documents->find() ->contain(['Causes']) ->where(['foreign_key' => $cause->id, 'model' => $model]); } else { $this->Flash->error(__('A apărut o problemă. Vă rugăm să încercați din nou')); return $this->redirect(['prefix' => 'Dashboard', 'controller' => 'Causes', 'action' => 'index']); } $this->set(compact('cause', 'documents', 'model', 'foreignUuid')); } /** * Disable/Activate */ public function delete($id = null) { if (!empty($id) && is_numeric($id)) { $this->request->allowMethod(['post']); $cause = $this->Causes->get($id); $cause->is_active = ($cause->is_active === true) ? false : true; if ($this->Causes->save($cause)) { $this->Flash->success(__('The cause has been changed.')); } else { $this->Flash->error(__('The cause could not be changed. Please try again later it was modified.')); } } else { $this->Flash->error(__('Oops. Please, try again.')); } return $this->redirect(['prefix' => 'Admin', 'controller' => 'Causes', 'action' => 'index']); } /** * Export data */ public function exportSpreadsheet($id) { $query = $this->viewDirectDonation($id, true); $data = $query->find('all')->toArray(); $results = []; foreach ($data as $key => $value) { $results[] = [ 'id' => $value['id'], 'f_name' => $value['first_name'], 'l_name' => $value['last_name'], 'nickname' => $value['nickname'], 'email' => $value['email'], 'value' => $value['value'], 'transation' => isset($value['transation']) ? $value['transation']['bank_account_id'] : '', 'cause' => $value['cause']['name'], 'is_anonymus' => $value['is_anonymus'] ? 'true' : 'false', 'is_visible' => $value['is_visible'] ? 'true' : 'false', 'created' => !empty($value['created']) ? $value['created']->i18nFormat('yyyy-MM-dd HH:mm:ss') : '', ]; } if (empty($results)) { $results[] = [ __('No results found') => '' ]; } $this->loadComponent('Spreadsheet'); $this->Spreadsheet->export($results, 'Report', 'Donors', $this->userAuth->name, 'no-save', []); } }