Ejemplo n.º 1
0
 /**
  * Response is always empty from this call. HTTP response code of 204 is success. Anything is an error.
  *
  * @param string $object
  * @param string $id
  * @param array  $fields
  *
  * @throws InternalServerErrorException
  * @return bool|mixed
  */
 public function updateObject($object, $id, $fields = array())
 {
     $_response = $this->fetch('/services/data/' . static::API_VERSION_TAG . '/sobjects/' . $object . '/' . $id, json_encode($fields), static::Patch);
     //	Curl error is false...
     if (false === $_response) {
         return false;
     }
     if (HttpResponse::NoContent == Curl::getLastHttpCode()) {
         return true;
     }
     //	Sometimes they send back xml...
     if (is_string($_response) && false !== stripos($_response, '<?xml')) {
         try {
             if (null === ($_response = Convert::toObject(simplexml_load_string($_response)))) {
                 throw new InternalServerErrorException('Unrecognizable response from server: ' . print_r($_response, true));
             }
             //	Otherwise we have a nice object which we return as json
         } catch (\Exception $_ex) {
             //	error...
             Log::error('Exception parsing response: ' . print_r($_response, true));
         }
     }
     return $_response;
 }
Ejemplo n.º 2
0
    /**
     * @param string $legend
     * @param string $submitButton
     * @param array  $attributes
     *
     * @internal param bool $submit
     * @return string
     */
    public function renderForm($legend = null, $submitButton = 'Submit', array $attributes = array())
    {
        if (static::VerticalGroupPattern !== $this->_blockPattern) {
            $attributes['class'] = static::addValue(Option::get($attributes, 'class', array()), 'form' . $this->_formType);
        }
        $_html = Convert::kvpToString($attributes);
        if (!empty($legend)) {
            $legend = static::wrap('legend', $legend);
        }
        $_submit = null;
        if (!empty($submitButton)) {
            $_submit = $this->button('submit', array('text' => true === $submitButton ? 'Submit' : $submitButton));
        }
        $_html = <<<HTML
<form {$_html}>
\t{$legend}
\t{$this->_contents}
\t<div class="form-actions">
\t{$_submit}
\t</div>
\t{$this->_csrf}
</form>
HTML;
        $this->_contents = null;
        return $_html;
    }