view->setTemplateAfter('common'); } function indexAction($id) { if($id){ $this->session->set("project-id", $id); } $params = $this->dispatcher->getParams(); $currentPage = !empty( $params['page'] ) ? $params['page'] : 1; // Набор данных для разбивки на страницы $data = \delivery::find("project_id = {$this->session->get('project-id')}"); // Создаём пагинатор, отображаются 10 элементов на странице, начиная с текущей - $currentPage /*$paginator = new \Phalcon\Paginator\Adapter\Model( array( "data" => $data, "limit"=> 10, "page" => $currentPage ) ); // Получение результатов работы ппагинатора $page = $paginator->getPaginate();*/ $this->view->setVars([ 'info' => $data ]); } function deleteAction($id) { $model = \delivery::query() ->where("id = $id") ->andWhere("project_id = {$this->session->get('project-id')}") ->execute(); if($model->toArray()){ $model->delete(); $this->flash->error( 'Данные успешно удалены' ); return $this->response->redirect([ 'for' => 'delivery_index' ]); } else { $this->flash->error( 'Произошла ошибка при попытке удаления' ); return $this->response->redirect([ 'for' => 'delivery_index' ]); } } function moreInfoAction($id) { $this->view->pick( 'delivery/addEdit' ); $this->view->setVars([ ]); } function updateAction($id) { $model = \delivery::findFirst("campaign_id = '$id' AND project_id = {$this->session->get('project-id')}"); //$model->status = $this->MyMailer->Delivery->getCampaignDeliveryStats( $id); $result = $this->MyMailer->Delivery->getCampaignAggregateStats( $id); $result['status'] = $this->MyMailer->Delivery->getDeliveryStatus( $id); //$model->status = $this->MyMailer->Delivery->getVisitedLinks($id); if( $model->save($result )) { $this->flash->success( 'Обновление прошло успешно' ); } else { $this->flash->error( 'Произошла ошибка во время обновления.' ); } return $this->response->redirect([ 'for' => 'delivery_index' ]); } public function getUsersLikeAction() { $like = $this->request->getPost('like', 'string', NULL ); $users = $this->models->getCustomers()->getActiveUsers($like); $result = json_encode($users); $this->view->disableLevel(\Phalcon\Mvc\View::LEVEL_MAIN_LAYOUT); echo $result; } public function getCampaignListAction() { $this->view->disableLevel(\Phalcon\Mvc\View::LEVEL_MAIN_LAYOUT); $name = $this->request->getQuery('term'); $model = new \delivery(); $modelsManager = $this->modelsManager; $projectId = $this->session->get('project-id'); $result = $model->getDistinct("campaign",$name,$modelsManager, $projectId); echo json_encode( array_reduce( $result, function($return, $elem) { $return[] = array( "label" => $elem['campaign'], "value" => $elem['campaign'] ); return $return; } ) ); } }