aowow/template/listviews/emote.tpl.php
Sarjuuk 6f59afe8e6 DB/Emotes
* added emotes to DB .. why? just because!
  * also added to search
  * cross-linked achievements and emotes
  * data is generated via: php aowow --sql=emotes
  * setup requires GlobalStrings.lua (see README.md)
2015-07-21 01:07:21 +02:00

90 lines
2.8 KiB
PHP

Listview.templates.emote = {
sort: [1],
searchable: 1,
filtrable: 1,
columns: [
{
id: 'name',
name: LANG.name,
type: 'text',
align: 'left',
value: 'name',
compute: function(emote, td, tr) {
var wrapper = $WH.ce('div');
var a = $WH.ce('a');
a.style.fontFamily = 'Verdana, sans-serif';
a.href = this.getItemLink(emote);
$WH.ae(a, $WH.ct(emote.name));
$WH.ae(wrapper, a);
$WH.ae(td, wrapper);
},
sortFunc: function(a, b, col) {
return $WH.strcmp(a.name, b.name);
},
getVisibleText: function(emote) {
return emote.name;
}
},
{
id: 'preview',
name: LANG.preview,
type: 'text',
align: 'left',
value: 'name',
compute: function(emote, td, tr) {
var prev = '';
if (emote.preview) {
td.className = 's4';
prev = emote.preview.replace(/%\d?\$?s/g, '<' + LANG.name + '>');
$WH.ae(td, $WH.ct(prev));
}
else {
td.className = 'q0';
td.style.textAlign = 'right';
td.style.Align = 'right';
var
sm = $WH.ce('small'),
i = $WH.ce('i');
sm.style.paddingRight = '8px';
$WH.ae(i, $WH.ct(LANG.lvnodata));
$WH.ae(sm, i);
$WH.ae(td, sm);
}
},
sortFunc: function(a, b, col) {
return $WH.strcmp(a.preview.replace(/%\d?\$?s/g, ''), b.preview.replace(/%\d?\$?s/g, ''));
},
getVisibleText: function(emote) {
return emote.preview.replace(/%\d?\$?s/g, '');
}
}
],
getItemLink: function(emote) {
return '?emote=' + emote.id;
}
}
new Listview({
template:'emote',
<?php
echo !isset($params['id']) ? "id:'emote'," : null;
echo !isset($params['name']) ? "name:'".Util::ucFirst(Lang::game('emotes'))."'," : null;
echo !isset($params['parent']) ? "parent:'lv-generic'," : null;
foreach ($params as $k => $v):
if ($v[0] == '$'):
echo $k.':'.substr($v, 1).',';
elseif ($v):
echo $k.":'".$v."',";
endif;
endforeach;
?>
data:<?php echo json_encode(array_values($data), JSON_NUMERIC_CHECK); ?>
});