/** * buildFields * @param string $defaultFieldsValue * @return void * @throws Request\Exception */ private function buildFields($defaultFieldsValue) { $rawFields = $this->getRequest()->get('fields', null, $defaultFieldsValue); $fields = explode(',', $rawFields); $helper = new SplitHelper('.'); $keyedFields = array_fill_keys($fields, null); $this->setField(new Field($helper->convert($keyedFields))); }
/** * testConvert_upperCase * @return void * @throws \Phalcon\Http\Request\Exception */ public function testConvert_upperCase() { //Arrange $splitHelper = new SplitHelper('.'); $input = ['user.abc' => 'alpha', 'User.abd' => 'delta']; //Act $actual = $splitHelper->convert($input); //Assert $expected = (object) ['User' => (object) ['abc' => 'alpha', 'abd' => 'delta']]; $this->assertEquals($expected, $actual); }
private function buildSearch() { $helper = new SplitHelper('_'); $params = $helper->convert($this->getRequest()->getQuery()); $this->setSearch(new Search($params, $this->getWhiteList())); }
/** * Gets the parameters, sorted from parent to child * @return \stdClass * @throws Exception */ private function loadParams() { if ($this->getRequest()->getRawBody() == '' && empty($this->getRequest()->getPost()) && empty($this->getRequest()->getPut()) && empty($this->getRequest()->getUploadedFiles())) { throw new Exception('No Data Passed', 400); } $bulkCreation = false; if (!is_null($this->getRequest()->getJsonRawBody())) { $params = $this->getRequest()->getJsonRawBody(); $delimiter = '.'; if (is_array($params)) { $bulkCreation = true; } } else { if ($this->getRequest()->isPost()) { $params = $this->getRequest()->getPost(); } else { $params = $this->getRequest()->getPut(); } $delimiter = '_'; } if ($this->request->getRawBody() != '' && sizeOf($params) == 0 && json_last_error() != JSON_ERROR_NONE) { $this->dispatchJsonError(); } if ($bulkCreation) { //Bulk Creation $outputParams = []; foreach ($params as $param) { $helper = new SplitHelper($delimiter); $outputParams[] = $helper->convert((array) $param); } $this->setParams($outputParams); } else { $helper = new SplitHelper($delimiter); $this->setParams($helper->convert((array) $params)); } }