8889841chome/clixcotz/mars.clix.co.tz/node_modules/relateurl/lib/parse/query.js000066600000001556150515511570022346 0ustar00"use strict"; var hasOwnProperty = Object.prototype.hasOwnProperty; function parseQuery(urlObj, options) { urlObj.query.string.full = stringify(urlObj.query.object, false); // TWEAK :: condition only for speed optimization if (options.removeEmptyQueries) { urlObj.query.string.stripped = stringify(urlObj.query.object, true); } } function stringify(queryObj, removeEmptyQueries) { var count = 0; var str = ""; for (var i in queryObj) { if ( i!=="" && hasOwnProperty.call(queryObj, i)===true ) { var value = queryObj[i]; if (value !== "" || !removeEmptyQueries) { str += (++count===1) ? "?" : "&"; i = encodeURIComponent(i); if (value !== "") { str += i +"="+ encodeURIComponent(value).replace(/%20/g,"+"); } else { str += i; } } } } return str; } module.exports = parseQuery; home/clixcotz/mars.clix.co.tz/node_modules/express/lib/middleware/query.js000066600000001565150515602320023035 0ustar00/*! * express * Copyright(c) 2009-2013 TJ Holowaychuk * Copyright(c) 2013 Roman Shtylman * Copyright(c) 2014-2015 Douglas Christopher Wilson * MIT Licensed */ 'use strict'; /** * Module dependencies. */ var merge = require('utils-merge') var parseUrl = require('parseurl'); var qs = require('qs'); /** * @param {Object} options * @return {Function} * @api public */ module.exports = function query(options) { var opts = merge({}, options) var queryparse = qs.parse; if (typeof options === 'function') { queryparse = options; opts = undefined; } if (opts !== undefined && opts.allowPrototypes === undefined) { // back-compat for qs module opts.allowPrototypes = true; } return function query(req, res, next){ if (!req.query) { var val = parseUrl(req).query; req.query = queryparse(val, opts); } next(); }; };