function contactsToJSON(reply, providerNs) { var items = xml.parseXmlString(reply.toString()).find('//query:item', {query: providerNs}); var jsonItems = []; items.forEach(function(e){ jsonItems.push(contactToJSON(e, ns)); }); return jsonItems; }
mml_builder.toXML(function(err, data){ var xmlDoc = libxmljs.parseXmlString(data); var sql = xmlDoc.get("//Parameter[@name='table']"); assert.eql(sql.text(), "my_polygon_tablez"); var style = xmlDoc.get("//PolygonSymbolizer"); assert.eql(style.attr('fill').value(), "#ff6600"); });
function xmlDoc(filename) { var xml = fs.readFileSync(filename); try { return libxmljs.parseXmlString(xml.toString()); } catch(err) { console.log(err + ": " + filename + " isn't xml"); } }
exports.postsToJSON = function(reply) { var items = xml.parseXmlString(reply.toString()).find('//query:item', {query: contentNs}); var jsonItems = []; items.forEach(function(e){ jsonItems.push(postToJson(e)); }); return jsonItems; }
exports.channelsToJSON = function(reply, ns) { var items = xml.parseXmlString(reply.toString()).find('//query:item', {query: ns}); var jsonItems = []; items.forEach(function(e){ jsonItems.push(channelToJson(e, ns)); }); return jsonItems; }
exports.modifyXML = function (xml, modifications) { var xmlDoc = libxmljs.parseXmlString(xml, { noblanks: true }); doModifications(xmlDoc, modifications); var result = xmlDoc.toString(); return result; };
test('validates wrapper vast XML', function(t) { var response = wrapper.xml({ pretty : true, indent: ' ', newline: '\n' }); // TB: If desired, uncomment here and write file to disk for review: // fs.writeFileSync('./test/files/wrapper.xml', response); xml = libxmljs.parseXmlString(response); var result = xml.validate(xsd); t.ok(result, 'It validates against the VAST .xsd'); t.end(); });
function push_apps(req, callback) { var file = utils.data_dir(req.body.base_uri)+'/appdata.xml'; var content = null; try { content = fs.readFileSync(file).toString(); } catch (err) { return callback(false, err); } var doc = libxml.parseXmlString(content); var apps = doc.root().childNodes(); var data = []; for (var i = 0; i < apps.length ; i++) { var elems = apps[i].childNodes(); var app = {}; var download = {'pkgrepo': req.body.base_uri}; for (var j = 0; j < elems.length; j++) { var attr = elems[j].attr('type'); if (attr) { if (attr.value() == 'desktop') continue; } if (elems[j].name() == 'appcategories') { var cates = elems[j].childNodes(); app.appcategories = []; for (var k = 0; k < cates.length; k++) { if (cates[k].text()) app.appcategories.push(cates[k].text()); } } else if (elems[j].name() == 'mimetypes') { } else if (elems[j].name() == 'pkgname') { download.pkgname = elems[j].text(); } else { app[elems[j].name()] = elems[j].text(); } } app.download = []; app.download.push(download); data.push(app); } var db = new Db('apps', new Server("127.0.0.1", 27017)); db.open(function(err, db) { if (err) return callback(false, err); db.collection("content", function(err, collection) { collection.insert(data, function(err, result) { if (err) { return callback(false, err); } else { db.close(); return callback(true); } }); }); }); };
}).toXML(function(err, data){ if ( err ) { return done(err); } var xmlDoc = libxmljs.parseXmlString(data); var xpath = "//MaxScaleDenominator"; var x = xmlDoc.get(xpath); assert.ok(x, "Xpath '" + xpath + "' does not match " + xmlDoc); assert.equal(x.text(), "50000000"); done(); });
exports.buildBasic = function(preDom){ if(undefined !=preDom) dom=preDom; else dom = libxmljs.parseXmlString(basic); header=dom.find('//soapenv:Header',namespace)[0]; body=dom.find('//soapenv:Body',namespace)[0]; }
function parseXML (doc, callback, nano, err, res, xml) { try{ var $ = libxml.parseXmlString(xml); }catch(error){ console.log('Error while parsing xml file:'); console.log(error); return error; } var deps = []; $.find('//itdDepartureList/itdDeparture').forEach(function (child) { var departure = { platform: child.attr('platform').value(), stopID: child.attr('stopID').value(), countdown: Number(child.attr('countdown').value()), isRealTime: true }; var servLine = child.find('itdServingLine')[0]; var itdNoTrain = servLine.find('itdNoTrain'); if(itdNoTrain.length > 0 && itdNoTrain[0].attr('delay') !== null) departure.strike = itdNoTrain[0].attr('delay').value() === '-9999'; departure.direction = servLine.attr('direction').value(); departure.realtime = servLine.attr('realtime').value(); departure.line = servLine.attr('number').value(); var dateTime = child.find('itdRTDateTime'); if (dateTime.length === 0) { departure.isRealTime = false; dateTime = child.find('itdDateTime')[0]; } else dateTime = dateTime[0]; var date = dateTime.find('itdDate')[0]; var time = dateTime.find('itdTime')[0]; departure.dateTime = new Date(Number(date.attr('year').value()), Number(date.attr('month').value()), Number(date.attr('day').value()), Number(time.attr('hour').value()), Number(time.attr('minute').value()), 0, 0); departure.dateTime = Number(departure.dateTime); deps.push(departure); }); doc.departures = deps.sort(function (a, b) { return (a.countdown - b.countdown); }); doc.lastUpdate = Number(new Date()); callback(null, doc); nano.bulk({docs: [doc]}, function (err) { if (err) { console.log('Error occured:'); console.log(err); } else console.log('Wrote record to database'); }); }
fs.readFile(fileName, 'utf8', function (err,rawData) { if (err) { return console.log(err); } var xmlDoc = libxmljs.parseXmlString(rawData); var root = xmlDoc.root(); var children = root.childNodes(); for (var i = 0 ; i < children.length; i++) { var child = children[i]; if (child.name() != 'text'){ var fileName = getAttributeValue(child, 'filename'); var titleKey = getAttributeValue(child, 'titleKey'); var title = escapeString(getChildDesc(child, 'titre')); var movieLink = escapeString(getChildDesc(child, 'movieLink')); var targetPublic = escapeString(getChildDesc(child, 'publicType')); var filmLength = escapeString(getChildDesc(child, 'duree')); var type = escapeString(getChildDesc(child, 'genre')); var realisator = escapeString(getChildDesc(child, 'realisateur')); var actors = escapeString(getChildDesc(child, 'acteurs')); var mediaScore = escapeString(getChildDesc(child, 'notePresse')); var specScore = escapeString(getChildDesc(child, 'noteSpec')); var synopsis = escapeString(getChildDesc(child, 'synopsis')); var affiche = escapeString(getChildDesc(child, 'affiche')); var originalTitle = escapeString(getChildDesc(child, 'titreOriginal')); var releaseDate = escapeString(getChildDesc(child, 'dateDeSortie')); originalTitle = originalTitle != "-" ? originalTitle : ""; releaseDate = convertDateFormat(releaseDate); var request = 'INSERT INTO film(`nom_fichier`, `titre`, `allocine`, `titre_original`, `date_sortie`, `public`, `durée`, `genre`, `realisateur`, `acteur`, `note_presse`, `note_spectateur`, `synopsis`, `image`) VALUES ('; request += '"' + fileName + '", '; request += '"' + title + '", '; request += '"' + movieLink + '", '; request += '"' + originalTitle + '", '; request += '"' + releaseDate + '", '; request += '"' + targetPublic + '", '; request += '"' + filmLength + '", '; request += '"' + type + '", '; request += '"' + realisator + '", '; request += '"' + actors + '", '; request += '"' + mediaScore + '", '; request += '"' + specScore + '", '; request += '"' + synopsis + '", '; request += '"' + affiche + '"'; request += ' );'; console.log(request); } } if (exitOnClose) process.exit(); });
PostSchema.virtual('contentHTML').get(function() { var result = ''; if (this.content) { var xmlDoc = libxmljs.parseXmlString(this.content); var links = xmlDoc.find('//a'); for ( var i in links) { var link = url.parse(links[i].attr('href').value()); if (link.protocol == 'evernote:') { var guid = link.pathname.split('/')[4]; links[i].attr({ href : '/id/'+guid, target : '_self' }); } else if (link.hostname != siteDomain) { links[i].attr({ target : '_blank' }); } } var medias = xmlDoc.find('//en-media'); for ( var i in medias) { var hash = medias[i].attr('hash').remove().value(); var mime = medias[i].attr('type').remove().value().split('/'); var value = '/resources/' + this.guid + '/' + hash + '.' + mime[1]; if (mime[0] == 'image') { medias[i].name('img').attr({ src : value }); } else { medias[i].name('a').attr({ href : value }); } } var crypts = xmlDoc.find('//en-crypt'); for ( var i in crypts) { crypts[i].remove(); } var todos = xmlDoc.find('//en-todo'); for ( var i in todos) { todos[i].remove(); } var lines = xmlDoc.get('//en-note').childNodes(); for ( var i in lines) { if (lines[i].childNodes().length != 0) { result += lines[i].toString(); } } } return result; });
gpsbabel.on('close', function (code) { var err; if ( code ) { err = new Error("gpsbabel error: " + code); } else { doc = libxmljs.parseXmlString(xml); } callback(err, doc); });
fs.readFile(fixturesDir + 'tracks/convolution_result.gpx', function (err, content) { var result = libxmljs.parseXmlString(content), resEle = result.find('//gpx:ele', nsConfig); assert.equal(resEle.length, elevations.length); resEle.forEach(function (ele, i) { assert.equal(resEle[i].text(), elevations[i].text()); }); });
mml_store.mml_builder({dbname: 'db', sql: "tab", style: DEFAULT_POINT_STYLE}).toXML(function(err, data){ if ( err ) { done(err); return; } var xmlDoc = libxmljs.parseXmlString(data); var sql = xmlDoc.get("//Parameter[@name='table']"); assert.equal(sql.text(), "tab"); // NOTE: there's no need to explicitly delete style // of mml_builder because it is an extension // of mml_builder2 (extended by SQL) done(); });
toString: function () { var xmlDoc = libxmljs.parseXmlString(this._data), props = xmlDoc.find('//d:prop', { d: 'DAV:' }); return props.map(function (prop) { return prop.childNodes().map(function (node) { return node.name() + ':' + node.text(); }).join(':'); }).join(':'); },
test('validates wrapper with companion vast XML', function(t) { var response = wrapperWithCompanion.xml({ pretty : true, indent: ' ', newline: '\n' }); // TB: If desired, uncomment here and write file to disk for review: // fs.writeFileSync('./test/files/wrapper-with-companion.xml', response); t.ok(response.match('StaticResource'), 'it ensures that companion ads are present'); xml = libxmljs.parseXmlString(response); var result = xml.validate(xsd); t.ok(result, 'It validates against the VAST .xsd'); t.end(); });
setTimeout(function(){ if (file.path.toLowerCase().indexOf(resultsFilenameString.toLowerCase()) > -1) { console.log('Found result ' + file.path); fs.readFile('./data/results/' + file.path, 'utf8', function (err,data) { if (err) { return console.log(err); } result = elections.parseXMLString(data, feedType); if (result) { votingArea = Object.keys(result)[0]; results.push(result); } elections.pushJSONtoS3(results, resultsFilename); //setTimeout(elections.snapshotMap(), 5000); }); } else if (file.path.indexOf('_SOP_') > -1) { SOPfilenameIndex = file.path.match(/.*?Local_SOP_(\d+)\.xml/i)[1]; if (SOPfilenameIndex > latestSOP) { latestSOP = SOPfilenameIndex; latestSOPFilename = file.path; try { libxmljs.parseXmlString(fs.readFileSync('./data/results/' + latestSOPFilename), { noblanks: true }); // Ensure XML isn't broken. elections.pushXMLtoS3(latestSOPFilename, SOPFilename); } catch(err) { console.log('Invalid SOP XML. Disregarding for now...'); } } } else if (file.path.indexOf('running_totals') > -1) { refFilenameIndex = file.path.match(/.*?running_totals_(\d+)\.xml/i)[1]; if (refFilenameIndex > latestRefRunTotal) { latestRefRunTotal = refFilenameIndex; latestRunningTotalsFilename = file.path; try { libxmljs.parseXmlString(fs.readFileSync('./data/results/' + latestRunningTotalsFilename), { noblanks: true }); // Ensure XML isn't broken. elections.pushXMLtoS3(latestRunningTotalsFilename, referendumFilename); } catch(err) { console.log('Invalid Running Total XML. Disregarding for now...'); } } } }, 5000);
}).toXML(function(err, data){ if ( err ) { return done(err); } var xmlDoc = libxmljs.parseXmlString(data); var x = xmlDoc.get("//Parameter[@name='interactivity_layer']"); assert.ok(x); assert.equal(x.text(), "layer0"); x = xmlDoc.get("//Parameter[@name='interactivity_fields']"); assert.ok(x); assert.equal(x.text(), "a,b"); done(); });
mml_store.mml_builder({dbname: 'd', sql: SAMPLE_SQL, style: style}).toXML(function(err, output) { try { assert.ok(_.isNull(err), _.isNull(err) ? '' : err.message); assert.ok(output); var xmlDoc = libxmljs.parseXmlString(output); //assert.equal(output, ''); var srs = xmlDoc.get("//PolygonSymbolizer/@fill"); assert.equal(srs.value(), '#ffffff'); done(); } catch (err) { done(err); } });
mml_builder2.toXML(function(err, data){ if ( err ) { done(err); return; } // TODO: check redis status now var xmlDoc = libxmljs.parseXmlString(data); var sql = xmlDoc.get("//Parameter[@name='table']"); assert.equal(sql.text(), "tab"); // NOTE: there's no need to explicitly delete style // of mml_builder because it is an extension // of mml_builder2 (extended by SQL) mml_builder2.delStyle(done); });
mml_builder.toXML(function(err, data){ if ( err ) { mml_builder.delStyle(function() { done(err); }); return; } var xmlDoc = libxmljs.parseXmlString(data); var x = xmlDoc.get("//Parameter[@name='interactivity_layer']"); assert.ok(x); assert.equal(x.text(), "t"); x = xmlDoc.get("//Parameter[@name='interactivity_fields']"); assert.ok(x); assert.equal(x.text(), "a,b"); mml_builder.delStyle(done); });
function jathTransform() { sys.puts( 'running jath transform' ); sys.puts( 'sourcedata ' + sourcedata ); sys.puts( 'templatedata ' + templatedata ); var xmldoc = xml.parseXmlString( sourcedata ); var template = eval( templatedata ); var result = jath.parse( template, xmldoc ); sys.puts( sys.inspect(result, false, null ) ); res.write( sys.inspect(result, false, null ) ); res.end(); }
function getLatestItemId(reply) { var replydoc = xml.parseXmlString(reply.toString()); var item = replydoc.get('/iq/p:pubsub/p:items/p:item[1]', { p: pubsub.ns }); if (item) { return item.attr('id').value(); } else { return null; } }
gpxcleaner()(files, false, function (err) { var doc = libxmljs.parseXmlString(files[path].contents), elevations = doc.find('//gpx:ele', nsConfig); elevations.forEach(function (ele) { assert.equal(350, parseInt(ele.text())); }); assert.equal(2, elevations.length); done(); });
function format(s){ if(libxml){ var result = libxml.parseXmlString(s).toString().replace(/^\s+|\s+$/g,''); //console.log(result.charCodeAt().toString(16),result) }else{ var domjs = new DomJS.DomJS(); domjs.parse(s, function(err, dom) { result = dom.toXml(); }); } return result; }
function parseRequestBody(req, res) { try { if (req.is('json') || req.body.toString().match(/^\w*\{/)) { return atom.fromJSON(JSON.parse(req.body)); } else { return xml.parseXmlString(req.body); } } catch (e) { res.send(400); return null; } }
function getLatestEntry(reply) { var replydoc = xml.parseXmlString(reply.toString()); var entries = replydoc.find('/iq/p:pubsub/p:items/p:item/a:entry', { p: pubsub.ns, a: atom.ns }); if (entries.length > 0) { return entries[0]; } else { return null; } }
var AdxReader = module.exports = function(data) { try { this.doc = libxml.parseXmlString(data); } catch (err) { console.log(err); this.records = []; return; } this.record = this.doc.get("/ADX/RECORDS/RECORD"); };