getExists($key.'_d'); } protected function getValueFromRequest(AphrontRequest $request, $key) { $value = AphrontFormDateControlValue::newFromRequest($request, $key); $value->setOptional(true); return $value->getDictionary(); } protected function newControl() { return id(new AphrontFormDateControl()) ->setAllowNull(true); } protected function didReadValueFromSavedQuery($value) { if (!$value) { return null; } if ($value instanceof AphrontFormDateControlValue && $value->getEpoch()) { return $value->setOptional(true); } $value = AphrontFormDateControlValue::newFromWild( $this->getViewer(), $value); return $value->setOptional(true); } }