public function __construct(DOMElement $context, $line)
 {
     $this->contextNode = $context;
     $this->writer = new XMLWriter();
     $this->writer->openMemory();
     $this->writer->startElementNs(null, $context->nodeName, 'http://schema.phpunit.de/coverage/1.0');
     $this->writer->writeAttribute('nr', $line);
 }
 public function addNotEmpty($node, \XMLWriter &$writer)
 {
     if (isset($node[$this->xsd_generator->getFullName('not_empty')]) && $node[$this->xsd_generator->getFullName('not_empty')]) {
         $writer->startElementNs('xsd', 'simpleType', null);
         $writer->startElementNs('xsd', 'restriction', null);
         $writer->writeAttribute('base', 'xsd:decimal');
         $writer->startElementNs('xsd', 'pattern', null);
         $writer->writeAttribute('value', '^[^0]*$');
         $writer->endElement();
         $writer->endElement();
         $writer->endElement();
         return true;
     }
     return false;
 }
 public function addNotEmpty($node, \XMLWriter &$writer)
 {
     if (isset($node[$this->xsd_generator->getFullName('not_empty')]) && $node[$this->xsd_generator->getFullName('not_empty')]) {
         $writer->startElementNs('xsd', 'simpleType', null);
         $writer->startElementNs('xsd', 'restriction', null);
         $writer->writeAttribute('base', 'xsd:normalizedString');
         $writer->startElementNs('xsd', 'minLength', null);
         $writer->writeAttribute('value', '200');
         $writer->endElement();
         $writer->endElement();
         $writer->endElement();
         return true;
     }
     return false;
 }
 /**
  * Write the service document in Atom format.
  * 
  * @param Object &$dummy Dummy object
  * 
  * @return string
  */
 public function writeRequest(&$dummy)
 {
     $this->_xmlWriter = new \XMLWriter();
     $this->_xmlWriter->openMemory();
     $this->_xmlWriter->startElementNs(null, ODataConstants::ATOM_PUBLISHING_SERVICE_ELEMENT_NAME, ODataConstants::APP_NAMESPACE);
     $this->_xmlWriter->writeAttributeNs(ODataConstants::XML_NAMESPACE_PREFIX, ODataConstants::XML_BASE_ATTRIBUTE_NAME, null, $this->_baseUri);
     $this->_xmlWriter->writeAttributeNs(ODataConstants::XMLNS_NAMESPACE_PREFIX, self::ATOM_NAMESPACE_PREFIX, null, ODataConstants::ATOM_NAMESPACE);
     $this->_xmlWriter->writeAttributeNs(ODataConstants::XMLNS_NAMESPACE_PREFIX, self::APP_NAMESPACE_PREFIX, null, ODataConstants::APP_NAMESPACE);
     $this->_xmlWriter->startElement(ODataConstants::ATOM_PUBLISHING_WORKSPACE_ELEMNT_NAME);
     $this->_xmlWriter->startElementNs(self::ATOM_NAMESPACE_PREFIX, ODataConstants::ATOM_TITLE_ELELMET_NAME, null);
     $this->_xmlWriter->text(ODataConstants::ATOM_PUBLISHING_WORKSPACE_DEFAULT_VALUE);
     $this->_xmlWriter->endElement();
     foreach ($this->_metadataQueryproviderWrapper->getResourceSets() as $resourceSetWrapper) {
         //start collection node
         $this->_xmlWriter->startElement(ODataConstants::ATOM_PUBLISHING_COLLECTION_ELEMENT_NAME);
         $this->_xmlWriter->writeAttribute(ODataConstants::ATOM_HREF_ATTRIBUTE_NAME, $resourceSetWrapper->getName());
         //start title node
         $this->_xmlWriter->startElementNs(self::ATOM_NAMESPACE_PREFIX, ODataConstants::ATOM_TITLE_ELELMET_NAME, null);
         $this->_xmlWriter->text($resourceSetWrapper->getName());
         //end title node
         $this->_xmlWriter->endElement();
         //end collection node
         $this->_xmlWriter->endElement();
     }
     //End workspace and service nodes
     $this->_xmlWriter->endElement();
     $this->_xmlWriter->endElement();
     $serviceDocumentInAtom = $this->_xmlWriter->outputMemory(true);
     return $serviceDocumentInAtom;
 }
 public function addIgnoreExtraKeys($node, \XMLWriter &$writer)
 {
     if (isset($node[$this->xsd_generator->getFullName('ignore_extra_keys')]) && $node[$this->xsd_generator->getFullName('ignore_extra_keys')]) {
         // not_empty makes sense only here - so let's test it
         $min = isset($node[$this->xsd_generator->getFullName('not_empty')]) && $node[$this->xsd_generator->getFullName('not_empty')] ? '1' : '0';
         $writer->startElementNs('xsd', 'sequence', null);
         $writer->startElementNs('xsd', 'any', null);
         $writer->writeAttribute('processContents', 'skip');
         $writer->writeAttribute('minOccurs', $min);
         $writer->writeAttribute('maxOccurs', 'unbounded');
         $writer->endElement();
         $writer->endElement();
         return true;
     }
     return false;
 }
 public function build($name, $node, \XMLWriter &$writer, $under_root)
 {
     // always inside an xsd:element
     $writer->startElementNs('xsd', 'element', null);
     $writer->writeAttribute('name', $name);
     $this->addRequired($node, $writer, $under_root);
     $writer->writeAttribute('type', 'xsd:boolean');
     $writer->endElement();
 }
示例#7
0
 public function buildRootNode($type, $node, \XMLWriter &$writer)
 {
     if ($type !== 'array') {
         throw new \Exception('Only array root nodes are supported');
     }
     $writer->startElementNs('xsd', 'schema', 'http://www.w3.org/2001/XMLSchema');
     foreach ($node[$this->getFullName('children')] as $key => $value) {
         $this->buildNode($key, $value[$this->getFullName('type')], $value, $writer, true);
     }
     $writer->endElement();
 }
 /**
  * Write all named streams in the given entity type
  * 
  * @param ResourceType $resourceType resource type
  * 
  * @return nothing
  */
 private function _writeNamedStreams(ResourceType $resourceType)
 {
     $namedStreams = $resourceType->getNamedStreamsDeclaredOnThisType();
     if (!empty($namedStreams)) {
         $this->_iOdataWriter->startElementNs(null, ODataConstants::DATAWEB_NAMEDSTREAMS_ELEMENT, ODataConstants::ODATA_METADATA_NAMESPACE);
         foreach ($namedStreams as $namedStreamName => $resourceStreamInfo) {
             $this->_iOdataWriter->startElementNs(null, ODataConstants::DATAWEB_NAMEDSTREAM_ELEMENT, ODataConstants::ODATA_METADATA_NAMESPACE);
             $this->_iOdataWriter->writeAttribute(ODataConstants::NAME, $resourceStreamInfo->getName());
             $this->_iOdataWriter->endElement();
         }
         $this->_iOdataWriter->endElement();
     }
 }
 /**
  * Begin an item in a collection
  *  
  * @param ODataProperty &$odataBagProperty Bag property object 
  * to begin write property
  * 
  * @return nothing
  */
 protected function beginBagPropertyItem(ODataProperty &$odataBagProperty)
 {
     foreach ($odataBagProperty->value->propertyContents as $odataPropertyContent) {
         if ($odataPropertyContent instanceof ODataPropertyContent) {
             $this->xmlWriter->startElementNs(ODataConstants::ODATA_NAMESPACE_PREFIX, ODataConstants::COLLECTION_ELEMENT_NAME, null);
             $this->writeBeginProperties($odataPropertyContent);
             $this->xmlWriter->endElement();
         } else {
             $this->xmlWriter->startElementNs(ODataConstants::ODATA_NAMESPACE_PREFIX, ODataConstants::COLLECTION_ELEMENT_NAME, null);
             $this->xmlWriter->text($odataPropertyContent);
             $this->xmlWriter->endElement();
         }
     }
 }
示例#10
0
 /**
  * Begin an item in a collection
  *  
  * @param ODataBagContent $bag Bag property object to begin write property
  *
  * 
  * @return AtomODataWriter
  */
 protected function writeBagContent(ODataBagContent $bag)
 {
     foreach ($bag->propertyContents as $content) {
         if ($content instanceof ODataPropertyContent) {
             $this->xmlWriter->startElementNs(ODataConstants::ODATA_NAMESPACE_PREFIX, ODataConstants::COLLECTION_ELEMENT_NAME, null);
             $this->writeProperties($content);
             $this->xmlWriter->endElement();
         } else {
             //probably just a primitive string
             $this->xmlWriter->startElementNs(ODataConstants::ODATA_NAMESPACE_PREFIX, ODataConstants::COLLECTION_ELEMENT_NAME, null);
             $this->xmlWriter->text($content);
             $this->xmlWriter->endElement();
         }
     }
     return $this;
 }
 public function build($name, $node, \XMLWriter &$writer, $under_root)
 {
     // always inside an xsd:element
     $writer->startElementNs('xsd', 'element', null);
     $writer->writeAttribute('name', $name);
     $this->addRequired($node, $writer, $under_root);
     // simpleType with restrictions
     $writer->startElementNs('xsd', 'simpleType', null);
     $writer->startElementNs('xsd', 'restriction', null);
     $writer->writeAttribute('base', 'xsd:string');
     $writer->startElementNs('xsd', 'pattern', null);
     $writer->writeAttribute('value', $node[$this->xsd_generator->getFullName('pattern')]);
     $writer->endElement();
     $writer->endElement();
     $writer->endElement();
     $writer->endElement();
 }
 public function build($name, $node, \XMLWriter &$writer, $under_root)
 {
     $writer->startElementNs('xsd', 'element', null);
     $writer->writeAttribute('name', $name);
     $this->addRequired($node, $writer, $under_root);
     // check min and max_items attributes
     $min = isset($node[$this->xsd_generator->getFullName('min_items')]) ? $node[$this->xsd_generator->getFullName('min_items')] : '0';
     $max = isset($node[$this->xsd_generator->getFullName('max_items')]) ? $node[$this->xsd_generator->getFullName('max_items')] : '200';
     // complexType
     // we can't validate the actual type of children nodes
     $writer->startElementNs('xsd', 'complexType', null);
     $writer->startElementNs('xsd', 'sequence', null);
     $writer->startElementNs('xsd', 'any', null);
     $writer->writeAttribute('minOccurs', $min);
     $writer->writeAttribute('maxOccurs', $max);
     $writer->endElement();
     $writer->endElement();
     $writer->endElement();
     $writer->endElement();
 }
 public function build($name, $node, \XMLWriter &$writer, $under_root)
 {
     // always inside an xsd:element
     $writer->startElementNs('xsd', 'element', null);
     $writer->writeAttribute('name', $name);
     $this->addRequired($node, $writer, $under_root);
     // there are not way to represent a strict enum
     // simpleType with restrictions
     $writer->startElementNs('xsd', 'simpleType', null);
     $writer->startElementNs('xsd', 'restriction', null);
     $writer->writeAttribute('base', 'xsd:string');
     foreach ($node[$this->xsd_generator->getFullName('values')] as $value) {
         $writer->startElementNs('xsd', 'enumeration', null);
         $writer->writeAttribute('value', $value);
         $writer->endElement();
     }
     $writer->endElement();
     $writer->endElement();
     $writer->endElement();
 }
示例#14
0
 /**
  * Writes the contents of this Merge to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents(\XMLWriter $writer)
 {
     if ($this->resourcesToDelete) {
         foreach ($this->resourcesToDelete as $i => $x) {
             $writer->startElementNs('fs', 'resourceToDelete', null);
             $x->writeXmlContents($writer);
             $writer->endElement();
         }
     }
     if ($this->resourcesToCopy) {
         foreach ($this->resourcesToCopy as $i => $x) {
             $writer->startElementNs('fs', 'resourceToCopy', null);
             $x->writeXmlContents($writer);
             $writer->endElement();
         }
     }
 }
示例#15
0
 /**
  * Writes the contents of this ChangeInfo to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->objectModifier) {
         $writer->writeAttribute('objectModifier', $this->objectModifier);
     }
     if ($this->operation) {
         $writer->writeAttribute('operation', $this->operation);
     }
     if ($this->reason) {
         $writer->writeAttribute('reason', $this->reason);
     }
     if ($this->objectType) {
         $writer->writeAttribute('objectType', $this->objectType);
     }
     if ($this->original) {
         $writer->startElementNs('fs', 'original', null);
         $this->original->writeXmlContents($writer);
         $writer->endElement();
     }
     if ($this->parent) {
         $writer->startElementNs('fs', 'parent', null);
         $this->parent->writeXmlContents($writer);
         $writer->endElement();
     }
     if ($this->removed) {
         $writer->startElementNs('fs', 'removed', null);
         $this->removed->writeXmlContents($writer);
         $writer->endElement();
     }
     if ($this->resulting) {
         $writer->startElementNs('fs', 'resulting', null);
         $this->resulting->writeXmlContents($writer);
         $writer->endElement();
     }
 }
示例#16
0
 /**
  * Writes the contents of this HealthConfig to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->buildDate) {
         $writer->startElementNs('fs', 'buildDate', null);
         $writer->text($this->buildDate);
         $writer->endElement();
     }
     if ($this->buildVersion) {
         $writer->startElementNs('fs', 'buildVersion', null);
         $writer->text($this->buildVersion);
         $writer->endElement();
     }
     if ($this->databaseVersion) {
         $writer->startElementNs('fs', 'databaseVersion', null);
         $writer->text($this->databaseVersion);
         $writer->endElement();
     }
     if ($this->platformVersion) {
         $writer->startElementNs('fs', 'platformVersion', null);
         $writer->text($this->platformVersion);
         $writer->endElement();
     }
 }
示例#17
0
 /**
  * @see		Formatter::formatSiteMapIndex()
  */
 public function formatSiteMapIndex(SiteMapIndex $siteMapIndex)
 {
     // init and configure XMLWriter
     $writer = new \XMLWriter();
     $writer->openMemory();
     $writer->setIndent(true);
     $writer->startDocument("1.0", "UTF-8");
     // start root
     $writer->startElementNs(null, "sitemapindex", "http://www.sitemaps.org/schemas/sitemap/0.9");
     // add all url's entries
     foreach ($siteMapIndex->getSiteMapEntries() as $siteMapEntry) {
         if ($siteMapEntry->getUrl() != null) {
             $writer->startElement("sitemap");
             $writer->writeElement("loc", htmlentities($siteMapEntry->getUrl(), null, "UTF-8", true));
             if ($siteMapEntry->getLastModification()) {
                 $writer->writeElement("lastmod", $siteMapEntry->getLastModification()->format(\DateTime::W3C));
             }
             $writer->endElement();
         }
     }
     // close root
     $writer->endElement();
     return $writer->flush();
 }
示例#18
0
 /**
  * Writes the contents of this Feature to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->name) {
         $writer->startElementNs('fs', 'name', null);
         $writer->text($this->name);
         $writer->endElement();
     }
     if ($this->description) {
         $writer->startElementNs('fs', 'description', null);
         $writer->text($this->description);
         $writer->endElement();
     }
     if ($this->enabled) {
         $writer->startElementNs('fs', 'enabled', null);
         $writer->text($this->enabled);
         $writer->endElement();
     }
     if ($this->activationDate) {
         $writer->startElementNs('fs', 'activationDate', null);
         $writer->text($this->activationDate);
         $writer->endElement();
     }
 }
示例#19
0
 /**
  * Writes the contents of this ArtifactMetadata to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->artifactType) {
         $writer->writeAttribute('artifactType', $this->artifactType);
     }
     if ($this->filename) {
         $writer->startElementNs('fs', 'filename', null);
         $writer->text($this->filename);
         $writer->endElement();
     }
     if ($this->height) {
         $writer->startElementNs('fs', 'height', null);
         $writer->text($this->height);
         $writer->endElement();
     }
     if ($this->width) {
         $writer->startElementNs('fs', 'width', null);
         $writer->text($this->width);
         $writer->endElement();
     }
 }
示例#20
0
 /**
  * Writes the contents of this MergeConflict to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->survivorResource) {
         $writer->startElementNs('fs', 'survivorResource', null);
         $this->survivorResource->writeXmlContents($writer);
         $writer->endElement();
     }
     if ($this->duplicateResource) {
         $writer->startElementNs('fs', 'duplicateResource', null);
         $this->duplicateResource->writeXmlContents($writer);
         $writer->endElement();
     }
 }
示例#21
0
$app->get('/rss', function (Application $app, Request $request) {
    // feed publication date is now
    $gmt = new DateTimeZone('GMT');
    $now = new DateTime('now', $gmt);
    $xml = new XMLWriter();
    $xml->openMemory();
    $xml->setIndent(true);
    $xml->setIndentString("\t");
    $xml->startDocument('1.0', 'UTF-8');
    $xml->startElement('rss');
    $xml->writeAttribute('version', '2.0');
    $xml->writeAttribute('xmlns:atom', 'http://www.w3.org/2005/Atom');
    $xml->writeAttribute('xmlns:content', 'http://purl.org/rss/1.0/modules/content/');
    $xml->startElement("channel");
    $xml->writeElement('title', $app['siteName']);
    $xml->startElementNs('atom', 'link', null);
    $xml->writeAttribute('href', $app['baseUrl'] . '/rss');
    $xml->writeAttribute('rel', 'self');
    $xml->endElement();
    // atom:link
    $xml->writeElement('description', $app['defaultKeywords']);
    $xml->writeElement('link', 'http://' . $_SERVER['SERVER_NAME']);
    $xml->writeElement('pubDate', $now->format(DATE_RSS));
    // get files
    $path = __DIR__ . '/../html/blog';
    $files = scandir($path, 1);
    // ignore dot-files and not-html-files
    $files = array_values(array_filter($files, function ($f) {
        return preg_match('/^.*\\.html$/', $f);
    }));
    $totalFiles = count($files) > $app['postsPerPage'] ? $app['postsPerPage'] : count($files);
示例#22
0
function mx_sitemapgen()
{
    global $mxdb, $s3, $mapsize;
    $xmldoc = new XMLWriter();
    $xmlmap = new XMLWriter();
    $xmldoc->openMemory();
    $xmldoc->startDocument('1.0', 'UTF-8');
    $xmldoc->startElementNs(null, 'sitemapindex', 'http://www.sitemaps.org/schemas/sitemap/0.9');
    $map = 1;
    $loc = 0;
    $site = 0;
    $nb = 0;
    // users sitemaps
    while ($users = $mxdb->getusers($site, $mapsize)) {
        $xmldoc->startElement('sitemap');
        $xmldoc->startElement('loc');
        $keyname = 'sitemaps/sitemap' . $map . '.txt';
        $xmldoc->text('http://www.example.com/sitemap.php?m=' . $map);
        $xmldoc->endElement();
        // loc
        $xmldoc->startElement('lastmod');
        $xmldoc->text(date('c'));
        $xmldoc->endElement();
        // lastmod
        $xmldoc->endElement();
        // sitemap
        $sitemap = '';
        // add directories
        $sitemap .= mx_actionurl_prod('artists', 'artsdir', 'alpha') . "\r\n";
        $sitemap .= mx_actionurl_prod('fans', 'fandir', 'alpha') . "\r\n";
        foreach ($users as $user) {
            if ($user->acctype == MXACCOUNTFAN) {
                $sitemap .= ($user->username ? 'http://www.example.com/f/' . $user->username : mx_actionurl_prod('fans', 'fanprof', $user->id)) . "\r\n";
            } else {
                if ($user->acctype == MXACCOUNTARTIST || $user->acctype == MXACCOUNTBAND) {
                    $sitemap .= ($user->username ? 'http://www.example.com/a/' . $user->username : mx_actionurl_prod('artists', 'artprof', $user->id)) . "\r\n";
                }
            }
        }
        $filename = '/tmp/sitemap' . $map . '.txt';
        file_put_contents($filename, $sitemap);
        $res = $s3->create_object(MXS3BUCKET, $keyname, array('fileUpload' => $filename, 'acl' => AmazonS3::ACL_PUBLIC));
        @unlink($filename);
        $site += $mapsize;
        $map++;
    }
    // media sitemaps
    $site = 0;
    while ($medias = $mxdb->getmedias($site, $mapsize)) {
        $xmldoc->startElement('sitemap');
        $xmldoc->startElement('loc');
        $keyname = 'sitemaps/sitemap' . $map . '.txt';
        $xmldoc->text('http://www.example.com/sitemap.php?m=' . $map);
        $xmldoc->endElement();
        // loc
        $xmldoc->startElement('lastmod');
        $xmldoc->text(date('c'));
        $xmldoc->endElement();
        // lastmod
        $xmldoc->endElement();
        // sitemap
        $sitemap = '';
        // add directories
        foreach ($medias as $media) {
            $sitemap .= mx_actionurl_prod('media', 'medprof', $media->id) . "\r\n";
        }
        $filename = '/tmp/sitemap' . $map . '.txt';
        file_put_contents($filename, $sitemap);
        $res = $s3->create_object(MXS3BUCKET, $keyname, array('fileUpload' => $filename, 'acl' => AmazonS3::ACL_PUBLIC));
        @unlink($filename);
        $site += $mapsize;
        $map++;
    }
    $xmldoc->endElement();
    // sitemap
    $xmldoc->endElement();
    // sitemapindex
    $mapndx = $xmldoc->flush();
    $filename = '/tmp/sitemapindex.xml';
    file_put_contents($filename, $mapndx);
    $res = $s3->create_object(MXS3BUCKET, 'sitemaps/sitemapindex.xml', array('fileUpload' => $filename, 'acl' => AmazonS3::ACL_PUBLIC));
    @unlink($filename);
}
示例#23
0
 /**
  * Writes the contents of this MergeAnalysis to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->survivorResources) {
         foreach ($this->survivorResources as $i => $x) {
             $writer->startElementNs('fs', 'survivorResource', null);
             $x->writeXmlContents($writer);
             $writer->endElement();
         }
     }
     if ($this->duplicateResources) {
         foreach ($this->duplicateResources as $i => $x) {
             $writer->startElementNs('fs', 'duplicateResource', null);
             $x->writeXmlContents($writer);
             $writer->endElement();
         }
     }
     if ($this->conflictingResources) {
         foreach ($this->conflictingResources as $i => $x) {
             $writer->startElementNs('fs', 'conflictingResource', null);
             $x->writeXmlContents($writer);
             $writer->endElement();
         }
     }
     if ($this->survivor) {
         $writer->startElementNs('fs', 'survivor', null);
         $this->survivor->writeXmlContents($writer);
         $writer->endElement();
     }
     if ($this->duplicate) {
         $writer->startElementNs('fs', 'duplicate', null);
         $this->duplicate->writeXmlContents($writer);
         $writer->endElement();
     }
 }
 function fiskalsve()
 {
     $zahtjev = $this->input->post('request');
     $msg = '';
     $uspjelo = 0;
     $nijeuspjelo = 0;
     //$firma = $this->fiskal->getById('firma', 'fi_id', $this->session->userdata('firmaID'));
     $firma = $this->fiskal->getFirma();
     //dohvati podatke za sve  nefiskalizirane
     $nefiskalizirani = $this->fiskal->getNefiskalizirane();
     //foreach ID
     if ($nefiskalizirani) {
         foreach ($nefiskalizirani as $dokument) {
             //dohvati pojedinacno
             $prikaziStavke = $this->fiskal->getstavke($dokument->do_id);
             $zaglavlje = $this->fiskal->getDokumentZag($dokument->do_id);
             $rekapitualcijaporeza = $this->fiskal->rekapitulacijaporeza($dokument->do_id);
             //Init XML
             $doc = new DOMDocument();
             $doc->formatOutput = true;
             //XML
             $ns = 'tns';
             $writer = new XMLWriter();
             $writer->openMemory();
             $writer->startDocument('1.0', 'UTF-8');
             $writer->setIndent(True);
             $writer->startElementNs($ns, 'RacunZahtjev', null);
             $writer->writeAttributeNS("xmlns", "tns", null, "http://www.apis-it.hr/fin/2012/types/f73");
             $writer->writeAttributeNS("xmlns", "xsi", null, "http://www.w3.org/2001/XMLSchema-instance");
             $writer->startElementNs($ns, 'Racun', null);
             $writer->writeElementNs($ns, 'Oib', null, $firma->fi_oib);
             $writer->writeElementNs($ns, 'USustPdv', null, $firma->fi_usustavuPDV);
             $writer->writeElementNs($ns, 'DatVrijeme', null, date("d.m.Y", strtotime($zaglavlje->do_datum)) . date("\\Th:i:s", strtotime($zaglavlje->do_vrijeme)));
             // date('d.m.Y\Th:i:s'));
             $writer->writeElementNs($ns, 'OznSlijed', null, 'N');
             /* P ili N => P na nivou Poslovnog prostora, N na nivou naplatnog uredaja */
             $writer->startElementNs($ns, 'BrRac', null);
             $writer->writeElementNs($ns, 'BrOznRac', null, $zaglavlje->do_broj);
             $writer->writeElementNs($ns, 'OznPosPr', null, $zaglavlje->PP);
             $writer->writeElementNs($ns, 'OznNapUr', null, $zaglavlje->NU);
             $writer->endElement();
             /* #BrRac */
             $writer->startElementNs($ns, 'Pdv', null);
             if (!empty($rekapitualcijaporeza)) {
                 $rank = 0;
                 foreach ($rekapitualcijaporeza as $porez) {
                     $writer->startElementNs($ns, 'Porez', null);
                     $writer->writeElementNs($ns, 'Stopa', null, $porez->porez_pz_posto);
                     $writer->writeElementNs($ns, 'Osnovica', null, $porez->sumaIznosa);
                     $writer->writeElementNs($ns, 'Iznos', null, number_format($porez->sumaPorez, 2, '.', ''));
                     $writer->endElement();
                     /* #Porez */
                 }
             }
             $writer->endElement();
             /* #Pdv */
             if (!empty($rekapitualcijaporeza)) {
                 $rank = 0;
                 foreach ($rekapitualcijaporeza as $porez) {
                     if ($porez->porez_pz_posto == "0") {
                         $writer->writeElementNs($ns, 'IznosOslobPdv', null, number_format($porez->sumaIznosa + $porez->sumaPorez, 2, '.', ''));
                     }
                 }
             }
             //$writer->writeElementNs($ns, 'IznosNePodlOpor', null, number_format($zaglavlje->do_iznos + $zaglavlje->do_iznosPDV,  2,'.',''));
             $writer->writeElementNs($ns, 'IznosUkupno', null, number_format($zaglavlje->do_iznos + $zaglavlje->do_iznosPDV, 2, '.', ''));
             $writer->writeElementNs($ns, 'NacinPlac', null, $zaglavlje->sp_oznaka);
             $writer->writeElementNs($ns, 'OibOper', null, $zaglavlje->op_oib);
             $writer->writeElementNs($ns, 'NakDost', null, '1');
             $writer->endElement();
             /* #Racun */
             $writer->endElement();
             /* #RacunZahtjev */
             $writer->endDocument();
             $XMLRequest = $writer->outputMemory();
             $doc->loadXML($XMLRequest);
             //file_put_contents("racun".$dokument->do_id.".xml",$XMLRequest);
             //fiskaliziraj
             if ($firma != FALSE) {
                 try {
                     $fis = new Fiskalizator($firma->fi_certifikat, $this->decrypt($firma->fi_pass));
                     //Produkcijski mode
                     //$fis->setProductionMode();
                     $fis->doRequest($doc);
                     #custom timeout and number of retries on network error, default is 3 retries and 5 seconds timeout tolerance
                     #$fis->doRequest($doc, 10, 5.2);
                     if ($fis->getRequestType() == 'RacunZahtjev') {
                         //echo 'JIR: '.$fis->getJIR().'<br>';
                         //echo 'ZKI: '.$fis->getZKI().'<br>';
                         $msg = '<pre class="bg-success">Uspje&#353;no fiskalizirani svi dokument!</pre>';
                         $uspjelo = $uspjelo + 1;
                         //update raèun
                         $dok['do_zki'] = $fis->getZKI();
                         $dok['do_jir'] = $fis->getJIR();
                         $this->fiskal->update("dokument", "do_id", $zaglavlje->do_id, $dok);
                     }
                 } catch (Exception $e) {
                     if ($zahtjev == 'RacunZahtjev') {
                         //update raèun
                         $dok['do_zki'] = $fis->getZKI();
                         $dok['do_sifragreske'] = $e->getMessage();
                         $this->fiskal->update("dokument", "do_id", $zaglavlje->do_id, $dok);
                     }
                     $msg = '<pre class="bg-danger">Gre&#353;ka </br>' . $e->getMessage() . '</pre>';
                     $nijeuspjelo = $nijeuspjelo + 1;
                 }
             }
         }
     }
     if ($nijeuspjelo == 0) {
         echo json_encode(array('uspjelo' => $uspjelo, 'poruka' => '<div class="alert alert-success">Uspje&#353;no fiskaliziranih ra&#269;una: <b>' . $uspjelo . '!</b></div>'));
     } else {
         echo json_encode(array('uspjelo' => $uspjelo, 'poruka' => '<div class="alert alert-danger">Nespje&#353;no fiskaliziranih ra&#269;una: <b>' . $nijeuspjelo . '</b> , uspje&#353;no fiskalizirano <b>' . $uspjelo . '</b></div>'));
     }
 }
示例#25
0
 /**
  * Writes the contents of this Error to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->code) {
         $writer->startElementNs('fs', 'code', null);
         $writer->text($this->code);
         $writer->endElement();
     }
     if ($this->label) {
         $writer->startElementNs('fs', 'label', null);
         $writer->text($this->label);
         $writer->endElement();
     }
     if ($this->message) {
         $writer->startElementNs('fs', 'message', null);
         $writer->text($this->message);
         $writer->endElement();
     }
     if ($this->stacktrace) {
         $writer->startElementNs('fs', 'stacktrace', null);
         $writer->text($this->stacktrace);
         $writer->endElement();
     }
 }
示例#26
0
 /**
  * Write the extensions into the GPX.
  *
  * @param \XMLWriter $xmlWriter The XMLWriter.
  * @param ExtensionInterface[] $extensions The extensions to write.
  */
 protected function writeExtensions(\XMLWriter $xmlWriter, array $extensions)
 {
     $xmlWriter->startElement('extensions');
     foreach ($extensions as $extension) {
         switch ($extension::ID()) {
             case HR::ID():
                 $xmlWriter->startElementNs('gpxtpx', 'TrackPointExtension', null);
                 $xmlWriter->writeElementNs('gpxtpx', 'hr', null, (string) $extension->value());
                 $xmlWriter->endElement();
                 break;
         }
     }
     $xmlWriter->endElement();
 }
示例#27
0
 /**
  * Writes the contents of this Content to an XML writer. The startElement is expected to be already provided.
  *
  * @param \XMLWriter $writer The XML writer.
  */
 public function writeXmlContents($writer)
 {
     if ($this->type) {
         $writer->writeAttribute('type', $this->type);
     }
     if ($this->gedcomx) {
         $writer->startElementNs('gx', 'gedcomx', null);
         $this->gedcomx->writeXmlContents($writer);
         $writer->endElement();
     }
 }