Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
})
// converts cents to dollar
Template.registerHelper("centiToDeci", centi => {
// console.log("called round on " + centi);
// console.log("rounded value:");
// console.log(round((centi/100),2));
// https://stackoverflow.com/a/2901298/1937233 adding commas
// return (centi/100).toFixed(2) .toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")
return round((centi/100),2).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",") // go back 2 decimal places, rounded to 2 decimal places.
})
Template.registerHelper("getPercent", (totalRaised, projectGoal) => {
return (totalRaised/projectGoal)*100;
})
Template.registerHelper("canEditProject", (project_id) => {
return permissions.canEditProject(project_id)
})
Template.registerHelper( "canSubmitDonationClaim", (project_id) => {
return permissions.canSubmitDonationClaim(project_id)
})
Template.registerHelper( "isAdmin", () => {
return permissions.isAdmin()
})
Template.registerHelper('absoluteUrl', path => {
return OHIF.utils.absoluteUrl(path);
});
// Return the current template instance
Template.registerHelper('instance', () => {
return Template.instance();
});
// Return the session value for the given key
Template.registerHelper('session', key => {
return Session.get(key);
});
// Return the value for given parameter regardless if it's reactive or not
Template.registerHelper('reactive', parameter => {
if (parameter instanceof ReactiveVar) {
return parameter.get();
}
return parameter;
});
https://joinup.ec.europa.eu/community/eupl/og_page/european-union-public-licence-eupl-v11 */
import moment from 'moment';
import { Template } from 'meteor/templating';
import { TAPi18n } from 'meteor/tap:i18n';
import 'moment/min/locales.min';
// Calculate time passed from create
Template.registerHelper('dateInTimeAgoFormat', (date) => {
// Get current language
const language = TAPi18n.getLanguage();
// return calculated difference from creation date
return moment(date).locale(language).from(moment());
});
Template.registerHelper('localeFormatDate', (date) => {
// Get current language
const language = TAPi18n.getLanguage();
return new Date(date).toLocaleDateString(language);
});
image = image.split(':')[0];
return image.slice(image.lastIndexOf('/') + 1);
});
Template.registerHelper('stringify', (obj) => {
return JSON.stringify(obj);
});
Template.registerHelper('getProp', (obj, propName, defaultVal='') => {
return _.get(obj, propName, defaultVal);
});
Template.registerHelper('or', (a,b) => {
return a || b;
});
Template.registerHelper('capitalize', (str)=>{
return _.capitalize(str);
});
Template.registerHelper('jsonparse', (str) => {
var obj;
try{
obj = JSON.parse(str);
}catch(e){
obj = str;
}
return obj;
});
Template.registerHelper('default', (arg1, arg2='unknown', arg3='unknown', arg4='unknown')=>{
return arg1 || arg2 || arg3 || arg4;
});
Template.registerHelper('outputDisabled', (disabled) => {
* @method toLowerCase
* @memberof BlazeTemplateHelpers
* @summary convert a string to lower case
* @param {String} str - string
* @return {String} returns lowercased string
*/
Template.registerHelper("toLowerCase", (str) => str.toLowerCase());
/**
* @method toUpperCase
* @memberof BlazeTemplateHelpers
* @summary convert a string to upper case
* @param {String} str - string
* @return {String} returns uppercased string
*/
Template.registerHelper("toUpperCase", (str) => str.toUpperCase());
/**
* @method capitalize
* @memberof BlazeTemplateHelpers
* @summary capitalize first character of string
* @param {String} str - string
* @return {String} returns string with first letter capitalized
*/
Template.registerHelper("capitalize", (str) => str.charAt(0).toUpperCase() + str.slice(1));
/**
* @method toCamelCase
* @memberof BlazeTemplateHelpers
* @summary camelCases a string
* @param {String} str - string
* @return {String|undefined} returns camelCased string
debug: i18nextDebugMode,
resources: {
de: {
translation: de.default,
},
},
}).then((t) => {
globalT = t
i18nextReady.set(true)
})
})
break
}
})
})
Template.registerHelper('i18nextReady', () => i18nextReady.get())
Template.registerHelper('unit', () => {
if (!Meteor.loggingIn() && Meteor.user() && Meteor.user().profile) {
return Meteor.user().profile.unit ? Meteor.user().profile.unit : '$'
}
return false
})
Template.registerHelper('emojify', (text) => {
if (text) {
const replacer = match => emoji.emojify(match)
return text.replace(/(:.*:)/g, replacer)
}
return false
})
Template.registerHelper('timeunit', () => {
if (!Meteor.loggingIn() && Meteor.user() && Meteor.user().profile && i18nextReady.get()) {
switch (Meteor.user().profile.timeunit) {
time >= hourBase ? `${hours} 時` : '',
time >= minuteBase ? `${minutes} 分` : '',
time >= secondBase ? `${seconds} 秒` : ''
].join(' ').trim();
}
Template.registerHelper('formatLongDurationTimeText', formatLongDurationTimeText);
export function currentUserId() {
return Meteor.userId();
}
Template.registerHelper('currentUserId', currentUserId);
export function accountInfoLink(userId) {
return FlowRouter.path('accountInfo', { userId });
}
Template.registerHelper('accountInfoLink', accountInfoLink);
export function isCurrentUserDirectorOf(companyId) {
const userId = Meteor.userId();
if (! userId) {
return false;
}
return !! dbDirectors.find({ userId, companyId }).count();
}
Template.registerHelper('isCurrentUserDirectorOf', isCurrentUserDirectorOf);
export function isCurrentUserChairmanOf(companyId) {
const user = Meteor.user();
if (user) {
const companyData = dbCompanies.findOne(companyId);
return this.innerHTML = marked(content || '', {sanitize: false})
});
Template.registerHelper('showTimeAgoTimestamp', (date, timezone) => {
if (!date) {
return ''
}
if (timezone && typeof timezone === 'string') {
return moment.tz(date, 'UTC').tz(timezone).fromNow()
}
return moment(date).fromNow()
})
Template.registerHelper('showLocalTimestamp', (date, timezone) => {
if (!date) {
return ''
}
if (timezone && typeof timezone === 'string') {
return moment.tz(date, 'UTC').tz(timezone).format('LLL z')
}
return moment(date).format('LLL')
})
Template.registerHelper('isEventUpcoming', (date, timezone) => {
if (!date) {
return ''
}
return Meteor.settings.public.BITBUCKET_URL;
});
Template.registerHelper('scmUrl', ()=>{
const service = getServiceConfiguration();
if(service === 'bitbucket') {
return Meteor.settings.public.BITBUCKET_URL;
} else {
return Meteor.settings.public.GITHUB_URL;
}
});
Template.registerHelper('currentGheOrgName', ()=>{
return Session.get('currentOrgName');
});
Template.registerHelper('currentGheOrgId', ()=>{
if(!Session.get('currentOrgName')){
return null;
}
var org = Orgs.findOne({ name: Session.get('currentOrgName') });
return _.get(org, 'gheOrgId', null);
});
Template.registerHelper('gheOrgIdLoaded', ()=>{
if(!Session.get('currentOrgName')){
return false;
}
var org = Orgs.findOne({ name: Session.get('currentOrgName') });
var gheOrgId = _.get(org, 'gheOrgId', null);
return !!gheOrgId;
});