UNPKG

ticketman

Version:

A simple pull-based job/ticket system contians a centeral ticket dispatcher and distributed workers. This system is written in NodeJS, runing on MongoDB

64 lines (58 loc) 2.1 kB
// Generated by CoffeeScript 1.12.5 (function() { var TICKET_STATUS_TO_INFO_TYPE, _, helpers; _ = require("underscore"); TICKET_STATUS_TO_INFO_TYPE = { pending: 'default', processing: 'primary', completed: 'success', abandoned: 'danger' }; helpers = { generateDownloadPathByJson: function(jsonId) { return "/assets/json/" + jsonId + ".json"; }, genDownloadTagByJsonId: function(jsonId, title) { var url; url = helpers.generateDownloadPathByJson(jsonId); return "<a href='" + url + "' class='btn btn-link'><i class='glyphicon glyphicon-download-alt'> </i> " + (title || jsonId) + "</a>"; }, genDateTag: function(date) { var dateStr, isoStr; isoStr = date instanceof Date ? date.toISOString() : date; dateStr = date instanceof Date ? date.toDateString() : date; return "<small title='" + isoStr + "' class='muted timeago'>" + dateStr + "</small>"; }, genPagination: function(pageData) { return pagination.create('search', pageData).render(); }, genLabelByStatus: function(status) { return "<span class='label label-" + (TICKET_STATUS_TO_INFO_TYPE[status] || 'default') + "'>" + status + "</span>"; }, syntaxHighlight: function(json) { if (typeof json !== "string") { json = JSON.stringify(json, undefined, 2); } json = json.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;"); return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function(match) { var cls; cls = "number"; if (/^"/.test(match)) { if (/:$/.test(match)) { cls = "key"; } else { cls = "string"; } } else if (/true|false/.test(match)) { cls = "boolean"; } else { if (/null/.test(match)) { cls = "null"; } } return "<span class=\"" + cls + "\">" + match + "</span>"; }); } }; module.exports = helpers; }).call(this);