public function save($validate = true)
    {
        if ($this->getValidate() != $validate) {
            $this->setValidate($validate);
        }

        $endpoint = ($this->getId() ? 'source/update' : 'source/create');
        $this->fromArray($this->getUser()->post($endpoint, $this->toArray()));

        return $this;
    }