/** * Verifica se uma reunião já existe * * @param type $al * @param type $dia * @return type */ public function exists($al, $dia) { $zfDate = new \Zend\Validator\Date(array('format' => 'd/m/Y')); if ($zfDate->isValid($dia)) { $dia = implode('-', array_reverse(explode('/', $dia))); } return (int) $this->gateway->exists($al, $dia); }
public function editAction() { $sl = $this->getServiceLocator(); $userService = $sl->get('User\\Service\\User'); /* @var $userService \User\Service\User */ $user = $userService->getUser(); $userMapper = $this->getServiceLocator()->get('User\\Model\\UserMapper'); $data = $this->getRequest()->getPost()->toArray(); $json = new JsonModel(); if ($data['name'] == 'fullName') { $fullName = strip_tags($data['value']); $user->setFullName(trim($fullName)); $userMapper->updateUser($user); } if ($data['name'] == 'birthdate') { $brithday = strip_tags($data['value']); $validator = new \Zend\Validator\Date(); if ($validator->isValid($brithday)) { $user->setBirthdate($brithday); $userMapper->updateUser($user); } else { $json->setVariables(['code' => 1, 'messages' => ['Sai định dạng ngày tháng file.']]); } } if ($data['name'] == 'gender') { $user->setGender(strip_tags($data['value'])); $userMapper->updateUser($user); } if ($data['name'] == 'cityId') { return $json->setVariables(['code' => 1, 'messages' => strip_tags($data['value'])]); } if ($data['name'] == 'districId') { $user->setDistrictId(strip_tags($data['value'])); if (!empty($data['city'])) { $user->setCityId(strip_tags($data['city'])); } $userMapper->updateUser($user); } if ($data['name'] == 'address') { $user->setAddress(strip_tags($data['value'])); $userMapper->updateUser($user); } if ($data['name'] == 'mobile') { $validator = new \Zend\Validator\Digits(); if ($validator->isValid($data['value'])) { $user->setMobile(strip_tags($data['value'])); $userMapper->updateUser($user); } } if ($data['name'] == 'email') { $validator = new \Zend\Validator\EmailAddress(); if ($validator->isValid($data['value'])) { $user->setEmail(strip_tags($data['value'])); $userMapper->updateUser($user); } } return ''; }
public function index02Action() { echo "<h3 style='color:red;font-weight:bold'>" . __METHOD__ . "</h3>"; $validator = new \Zend\Validator\Date("Y.m.d"); $input = "1992-11-17"; $input = "1992.01.17"; if (!$validator->isValid($input)) { $message = $validator->getMessages(); echo current($message); } else { echo "ok"; } return false; }
/** * Convert the date format from the post data array to the database format value * * @see Zend\Stdlib\Hydrator\Strategy.StrategyInterface::hydrate() */ public function hydrate($value) { if (is_string($value) && "" === $value) { $value = null; } elseif (is_string($value)) { $date = new \DateTime(); $validator = new \Zend\Validator\Date(array('format' => 'd/m/Y H:i:s', 'locale' => 'it')); if ($validator->isValid($value)) { $thedate = $date->createFromFormat('d/m/Y H:i:s', $value); $value = $thedate->format('Y-m-d H:i:s'); } if (strlen($value) > 10) { $thedate = $date->createFromFormat('d/m/Y H:i', $value); if ($thedate) { $value = $thedate->format('Y-m-d H:i'); } } } if (is_string($value)) { $value = new DateTime($value); } return $value; }
/** * @param $data * @return Paginator * */ public function pesquisar($data) { $sql = new Sql($this->getAdapter()); $select = $this->getSql()->select(); $select->join('coleta', 'coleta.id_coleta = registro.id_coleta', array('data')); $validator = new \Zend\Validator\Date(); if ($validator->isValid($data["data_ini"]) and !$validator->isValid($data["data_end"])) { $select->where->greaterThanOrEqualTo('coleta.data', $data["data_ini"]); } if (!$validator->isValid($data["data_ini"]) and $validator->isValid($data["data_end"])) { $select->where->lessThanOrEqualTo('coleta.data', $data["data_end"]); } if ($validator->isValid($data["data_ini"]) and $validator->isValid($data["data_end"])) { $select->where->greaterThanOrEqualTo('coleta.data', $data["data_ini"]); $select->where->and->lessThanOrEqualTo('coleta.data', $data["data_end"]); } if (strlen($data["palavra"]) > 2) { if ($validator->isValid($data["data_ini"]) or $validator->isValid($data["data_end"])) { $select->where->and; } $select->where->like('registro.cidade', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.estado', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.objeto', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.uasg', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.orgao1', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.orgao2', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.orgao3', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.edital', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.item_material', '%' . $data["palavra"] . '%'); $select->where->or->like('registro.item_servico', '%' . $data["palavra"] . '%'); } $select->order("coleta.data"); //echo $select->getSqlString(); $adapter = new DbSelect($select, $sql); $paginator = new Paginator($adapter); return $paginator; }
public function testErrorShowTwice() { $element = new Element\Date('birth'); $element->setFormat('Y-m-d'); $element->setValue('2010-13-13'); $validator = new \Zend\Validator\Date(); $validator->isValid($element->getValue()); $element->setMessages($validator->getMessages()); $markup = $this->helper->__invoke($element); $this->assertEquals(2, count(explode("<ul><li>The input does not appear to be a valid date</li></ul>", $markup))); }
public function activeAction() { $error = array(); $title = 'Kích hoạt tin > Thêm mới'; $this->headTitle($title)->setSeparator(" - ")->append("Hệ thống quản trị website"); $view = new ViewModel(); //danh sách loại tin $listItemTypeNews = $this->getTable()->itemInselectBox($this->_arrParam, array('task' => 'list-item-type-news')); //Thông tin dịch vụ tài khoản cao cấp $itemStatisticService = $this->getTable()->getItem($this->identity()->id, array('task' => 'get-item-statistic-service')); if (!empty($itemStatisticService)) { $infoAccountService = \Zend\Json\Json::decode($itemStatisticService['info_service_account']); $normal = $infoAccountService->normal; $vip = $infoAccountService->vip; $hot = $infoAccountService->hot; $free = $infoAccountService->free; $chinhchu = $infoAccountService->chinhchu; $date_start = $infoAccountService->date_start; $date_end = $infoAccountService->date_end; $service_account = $infoAccountService->service_account; } $item = $this->getTable()->getItem($this->_arrParam, array('task' => 'get-item')); if ($this->getRequest()->isPost()) { //Kiểm tra chọn select box if (empty($this->_arrPost['sltEventType'])) { $error[] = 'Bạn phải chọn loại tin!'; } if (empty($this->_arrPost['txtEndDate'])) { $error[] = 'Ngày hết hạn không được trống!'; $validator = new \Zend\Validator\Date(array('format' => 'dd/MM/yyyy')); if (!$validator->isValid($this->_arrPost['txtEndDate'])) { $error[] = 'Ngày hết hạn không hợp lệ!'; } } //Kiểm tra thời hạn sử dụng tài khoản cao cấp if ($date_end != 'Vô hạn') { $hansudung = explode("-", $date_end); //tính số ngày còn lại sử dụng dịch vụ $month = !empty($hansudung[1]) ? $hansudung[1] : ''; $day = !empty($hansudung[0]) ? $hansudung[0] : ''; $year = !empty($hansudung[2]) ? $hansudung[2] : ''; $remain = ceil((mktime(0, 0, 0, $month, $day, $year) - time()) / 86400); if ($remain <= 0) { $error[] = $service_account . ' của bạn đã hết hạn sử dụng!'; } } //Kiểm tra xem số tin kích hoạt nếu hết tin thì không cho kích hoạt loại tin đó //Tin miễn phí if ($this->_arrPost['sltEventType'] == 1) { if ($free == 0) { $error[] = 'Bạn đã hết tin Miễn phí để kích hoạt!'; } $free = $free - 1; //sau khi kích hoạt tin trừ đi 1 lần kích hoạt } //Tin Thường if ($this->_arrPost['sltEventType'] == 2) { if ($normal == 0) { $error[] = 'Bạn đã hết tin Thường để kích hoạt!'; } $normal = $normal - 1; //sau khi kích hoạt tin trừ đi 1 lần kích hoạt } //Tin VIP if ($this->_arrPost['sltEventType'] == 3) { if ($vip == 0) { $error[] = 'Bạn đã hết tin VIP để kích hoạt!'; } $vip = $vip - 1; //sau khi kích hoạt tin trừ đi 1 lần kích hoạt } //Tin HOT if ($this->_arrPost['sltEventType'] == 4) { if ($hot == 0) { $error[] = 'Bạn đã hết tin HOT để kích hoạt!'; } $hot = $hot - 1; //sau khi kích hoạt tin trừ đi 1 lần kích hoạt } //Tin Chính chủ if ($this->_arrPost['sltEventType'] == 5) { if ($chinhchu == 0) { $error[] = 'Bạn đã hết tin Chính Chủ để kích hoạt!'; } $chinhchu = $chinhchu - 1; //sau khi kích hoạt tin trừ đi 1 lần kích hoạt } if (empty($error)) { //cập nhật trạng thái $data = array('id' => $this->_arrPost['id'], 'status' => 5, 'type_news' => $this->_arrPost['sltEventType'], 'date_end' => $this->_arrPost['txtEndDate']); $this->getTable()->saveItem($data, array('task' => 'edit')); //lưu lịch sử giao dịch $dataHitory = array('service_id' => $this->_arrPost['id'], 'type_news' => $this->_arrPost['sltEventType'], 'user_id' => $this->identity()->id, 'date_time' => date('d/m/Y h:i:s')); $this->getTable()->saveItem($dataHitory, array('task' => 'save-history-transaction')); //Cập nhật lại số tin đã dùng $array = array('service_account' => $service_account, 'normal' => $normal, 'vip' => $vip, 'hot' => $hot, 'free' => $free, 'chinhchu' => $chinhchu, 'date_start' => $date_start, 'date_end' => $date_end); $infoServiceAccountJson = \Zend\Json\Json::encode($array); $dataUser = array('id' => $this->identity()->id, 'info_service_account' => $infoServiceAccountJson); $this->getTable()->saveItem($dataUser, array('task' => 'update-info-user')); $this->redirect()->toUrl('/user/real-estate/'); } } $view->setVariables(array('arrParam' => $this->_arrParam, 'currentController' => $this->_currentController, 'item' => $item, 'error' => $error, 'listItemTypeNews' => $listItemTypeNews)); return $view; }