Exemple #1
0
 function encode(DOMElement $container, DOMDocument $doc)
 {
     parent::encode($container, $doc);
     if ($this->productDetails) {
         $detailsNode = $doc->createElement("fieldlabel");
         $detailsNode->setAttribute("value", "Product Details");
         foreach ($this->productDetails as $i => $productDetail) {
             $row = $doc->createElement("product");
             $row->setAttribute("no", $i + 1);
             $productDetail->encode($row, $doc);
             $detailsNode->appendChild($row);
         }
         $container->appendChild($detailsNode);
     }
 }
Exemple #2
0
 /**
  * @param Scalr_Service_ZohoCrm_Entity $entity
  * @return Scalr_Service_ZohoCrm_Entity
  */
 function update($entity)
 {
     $request = $this->newRequest();
     $row = $request->createElement("row");
     $row->setAttribute("no", "1");
     $entity->encode($row, $request);
     $request->documentElement->appendChild($row);
     $response = $this->request(array("method" => self::METHOD_UPDATE, "xmlData" => $request, "queryParams" => array("id" => $entity->id)));
     $xpath = new DOMXPath($response);
     $recorddetails = $xpath->query("//response/result/recorddetail");
     if ($recorddetails->length) {
         $this->decodeRecordDetail($entity, $recorddetails->item(0), $xpath);
     } else {
         throw new Scalr_Service_ZohoCrm_Exception("Cannot find 'recorddetail' node in response xml");
     }
     return $entity;
 }