Albirew/nyaa-pantsu
Albirew
/
nyaa-pantsu
Archivé
1
0
Bifurcation 0
Ce dépôt a été archivé le 2022-05-07. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
nyaa-pantsu/public/js/template.js

51 lignes
1.6 KiB
JavaScript
Brut Vue normale Historique

2017-06-04 07:43:41 +02:00
// @source https://github.com/NyaaPantsu/nyaa/tree/dev/public/js
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
// Templates variable
var Templates = {
2017-07-16 06:43:09 +02:00
tmpl: [],
2017-07-23 04:50:36 +02:00
Add: function (templateName, template) {
2017-07-16 06:43:09 +02:00
this.tmpl[templateName] = template
},
2017-07-23 04:50:36 +02:00
Render: function (templateName, model) {
if (this.tmpl[templateName] === undefined) {
console.log("The template with name '%s' doesn't exist", templateName)
return
}
2017-07-16 06:43:09 +02:00
return this.tmpl[templateName](model)
},
2017-07-23 04:50:36 +02:00
ApplyItemListRenderer: function (params) {
return function (models) {
for (var i = models.length - 1; i >= 0; i--) {
2017-07-16 06:43:09 +02:00
var object = Templates.Render(params.templateName, models[i]);
if (params.method == "append") {
params.element.innerHTML = params.element.innerHTML + object
} else if (params.method == "prepend") {
params.element.innerHTML = object + params.element.innerHTML
}
}
};
},
2017-07-23 04:50:36 +02:00
EncodeEntities: function (value) {
2017-07-16 06:43:09 +02:00
return value.
replace(/&/g, '&').
2017-07-23 04:50:36 +02:00
replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, function (value) {
2017-07-16 06:43:09 +02:00
var hi = value.charCodeAt(0);
var low = value.charCodeAt(1);
return '&#' + (((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000) + ';';
}).
2017-07-23 04:50:36 +02:00
replace(/([^\#-~| |!])/g, function (value) {
2017-07-16 06:43:09 +02:00
return '&#' + value.charCodeAt(0) + ';';
}).
replace(/</g, '&lt;').
replace(/>/g, '&gt;');
},
2017-07-23 04:50:36 +02:00
FlagCode: function (language) {
var split = language.split("-")
if (split.length > 1) {
return split[1]
}
return language
2017-07-16 06:43:09 +02:00
}
};
2017-06-04 07:43:41 +02:00
// @license-end