public function update(FieldUpdater $listener, $id, array $input)
    {
        $customfield = Foundation::make('antares.customfields.model')->findOrFail($id);
        $this->attachValidator();
        $on          = $customfield->imported ? 'imported' : 'update';
        $validation  = $this->validator->on($on)->with($input);

        if ($validation->fails()) {
            return $listener->updateFieldFailedValidation($validation->getMessageBag(), $id);
        }


        try {
            $this->saving($customfield, $input, 'update');
        } catch (Exception $e) {
            Log::emergency($e);
            return $listener->updateFieldFailed(['error' => $e->getMessage()]);
        }

        return $listener->fieldUpdated();
    }