Version 1.12

This commit is contained in:
nemunaire 2009-11-01 12:00:00 +01:00
commit de31cd3e9a
1373 changed files with 156282 additions and 45238 deletions

View file

@ -0,0 +1,103 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 21:18:35
compiled from game/chantierterrestre.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/chantierterrestre.tpl', 27, false),array('modifier', 'separerNombres', 'game/chantierterrestre.tpl', 29, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['i'] != true): ?><span><strong>Prochaine <?php if ($this->_tpl_vars['element']['5']): ?>unit&eacute;<?php else: ?>d&eacute;fense<?php endif; ?> </strong> : <em id="resten"></em>
<script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['4']; ?>
,'resten', true);</script></span><?php endif; ?>
<span><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démolition)<?php endif; ?> - <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['3']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script>
- <a href="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler un</a> - <a href="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
&amp;n=<?php echo $this->_tpl_vars['element']['1']; ?>
">Annuler tous</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucune unit&eacute; dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=chantierterrestre">Arbre des technologies</a></h3><br />
<h2>Chantier terrestre </h2>
<table class="construction">
<?php $_from = $this->_tpl_vars['unites']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['unite']):
?>
<tr>
<td>
<a class="bulle" href="?p=description&amp;d=<?php echo $this->_tpl_vars['unite']['num']; ?>
#menu">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/terrestre/<?php echo $this->_tpl_vars['unite']['image']; ?>
" alt="Unit&eacute; terrestre" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['descriptions'][$this->_tpl_vars['unite']['id']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_sing'][$this->_tpl_vars['unite']['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['unite']['nombre'] > 0): ?> (<?php echo $this->_tpl_vars['unite']['nombre']; ?>
unité<?php if ($this->_tpl_vars['unite']['nombre'] > 1): ?>s<?php endif; ?>)<?php endif; ?></strong><br /><br />
<?php if ($this->_tpl_vars['unite']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps de construction : <?php echo $this->_tpl_vars['unite']['temps']; ?>
<br /><br />
<form action="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
&amp;v=<?php echo $this->_tpl_vars['unite']['id']; ?>
" method="post">
<fieldset>
<input class="text" type="text" name="nombre" value="0" />
<input class="submit" name="terr<?php echo $this->_tpl_vars['unite']['id']; ?>
" type="submit" value="OK" />
</fieldset>
</form>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,170 @@
<?php /* Smarty version 2.6.22, created on 2009-03-02 19:56:33
compiled from game/description.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/description.tpl', 6, false),array('modifier', 'separerNombres', 'game/description.tpl', 26, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Détails <?php echo $this->_tpl_vars['type']; ?>
: <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']][$this->_tpl_vars['type']]['noms_sing'][$this->_tpl_vars['id']]; ?>
</h2>
<table style="width: 400px;">
<tbody>
<tr>
<td style="width: 120px;"><img src="<?php echo $this->_tpl_vars['url_images']; ?>
images/<?php echo $this->_tpl_vars['type']; ?>
/<?php echo $this->_tpl_vars['image']; ?>
" alt="<?php echo ((is_array($_tmp=$this->_tpl_vars['type'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
" /></td>
<td><b><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']][$this->_tpl_vars['type']]['noms_sing'][$this->_tpl_vars['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</b><br />Actuellement : <?php if ($this->_tpl_vars['type'] != 'vaisseaux' && $this->_tpl_vars['type'] != 'terrestre' && $this->_tpl_vars['type'] != 'caserne'): ?>niveau<?php endif; ?> <?php echo $this->_tpl_vars['planete']->{(($_var=$this->_tpl_vars['type']) && substr($_var,0,2)!='__') ? $_var : $this->trigger_error("cannot access property \"$_var\"")}[$this->_tpl_vars['id']]; ?>
<?php if ($this->_tpl_vars['type'] == 'vaisseaux' || $this->_tpl_vars['type'] == 'terrestre' || $this->_tpl_vars['type'] == 'caserne'): ?> unités<?php endif; ?></td>
</tr>
<tr>
<td colspan="2"><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']][$this->_tpl_vars['type']]['descriptions'][$this->_tpl_vars['id']]; ?>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2">
<table style="margin: auto; width: 100%;">
<thead>
<tr>
<th colspan="2">Coûts <?php if ($this->_tpl_vars['type'] == 'vaisseaux' || $this->_tpl_vars['type'] == 'terrestre' || $this->_tpl_vars['type'] == 'caserne'): ?>unité<?php else: ?>prochain niveau<?php endif; ?></th>
</tr>
</thead>
<tbody>
<?php if ($this->_tpl_vars['ressourcesNext']['0']): ?>
<tr>
<th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['ressources']['noms']['metal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressourcesNext']['0'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php endif; ?>
<?php if ($this->_tpl_vars['ressourcesNext']['1']): ?>
<tr>
<th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['ressources']['noms']['cristal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressourcesNext']['1'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php endif; ?>
<?php if ($this->_tpl_vars['ressourcesNext']['2']): ?>
<tr>
<th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['ressources']['noms']['hydrogene'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressourcesNext']['2'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php endif; ?>
<tr>
<th>Temps</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressourcesNext']['3'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<?php if ($this->_tpl_vars['tableau_prod']): ?>
<tr>
<td colspan="2">
<table style="margin: auto; width: 100%;">
<thead>
<tr>
<th colspan="5">Production et consomation théoriques</th>
</tr>
<tr>
<th>Niveau</th>
<th>Production</th>
<th>Consomation</th>
<th>Différence prod.</th>
<th>Différence conso.</th>
</tr>
</thead>
<tbody>
<?php $_from = $this->_tpl_vars['tableau_prod']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['ligne']):
?>
<?php if ($this->_tpl_vars['ligne']['0'] == $this->_tpl_vars['planete']->{(($_var=$this->_tpl_vars['type']) && substr($_var,0,2)!='__') ? $_var : $this->trigger_error("cannot access property \"$_var\"")}[$this->_tpl_vars['id']]): ?><tr style="color: #F0F0F0;"><?php else: ?><tr><?php endif; ?>
<td style="font-weight: bold;"><?php echo $this->_tpl_vars['ligne']['0']; ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['1'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['2'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
<td><?php if ($this->_tpl_vars['ligne']['3'] > 0): ?>+<?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['3'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
<td><?php if ($this->_tpl_vars['ligne']['4'] > 0): ?>+<?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['4'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</tbody>
</table>
</td>
</tr>
<?php elseif ($this->_tpl_vars['caract']): ?>
<tr>
<td colspan="2">
<table style="margin: auto; width: 100%;">
<thead>
<tr>
<th colspan="2">Caractéristiques</th>
</tr>
</thead>
<tbody>
<tr>
<th>Attaque</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['caract']['0'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<tr>
<th>Bouclier</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['caract']['1'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<tr>
<th>Points de vie</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['caract']['2'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php if ($this->_tpl_vars['caract']['3']): ?>
<tr>
<th>Capacité de transport</th>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['caract']['3'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
</tr>
<?php endif; ?>
</tbody>
</table>
</td>
</tr>
<?php endif; ?>
<tr>
<td colspan="2">
<table style="margin: auto; width: 100%;">
<thead>
<tr>
<th>Requiert</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $this->_tpl_vars['etat']; ?>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tfoot>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,100 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 18:51:41
compiled from game/arbre.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/arbre.tpl', 10, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Arbre Technologique <?php echo $this->_tpl_vars['raceAff']; ?>
</h2>
Race : <a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;r=humain">Humains</a> - <a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;r=covenant">Covenants</a>
<div class="techno">
<div<?php if ($this->_tpl_vars['defaut'] == 'batiments'): ?> class="hightlight"<?php endif; ?>><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=batiments&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
">Bâtiments</a>
<div><table><thead>
<tr><th>Batiments (niveau)</th><th>Technologies nécessaires (niveau actuel)</th></tr>
</thead><tbody>
<?php $_from = $this->_tpl_vars['batiments']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['batiment']):
?>
<tr><td><a href="?p=description&amp;b=<?php echo $this->_tpl_vars['key']; ?>
&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
#menu"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['batiments']['noms_sing'][$this->_tpl_vars['key']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> (<?php echo $this->_tpl_vars['batiment']['niveau']; ?>
) :</td><td><?php echo $this->_tpl_vars['batiment']['etat']; ?>
</td></tr>
<?php endforeach; endif; unset($_from); ?>
</tbody></table></div>
</div>
<div<?php if ($this->_tpl_vars['defaut'] == 'caserne'): ?> class="hightlight"<?php endif; ?>><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=caserne&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['batiments']['noms_sing']['9'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<div><table><thead>
<tr><th>Unité</th><th>Technologies nécessaires</th></tr>
</thead><tbody>
<?php $_from = $this->_tpl_vars['caserne']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['unite']):
?>
<tr><td><a href="?p=description&amp;c=<?php echo $this->_tpl_vars['key']; ?>
&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
#menu"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['caserne']['noms_sing'][$this->_tpl_vars['key']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> (<?php echo $this->_tpl_vars['unite']['niveau']; ?>
) :</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['etat'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td></tr>
<?php endforeach; endif; unset($_from); ?>
</tbody></table></div>
</div>
<div<?php if ($this->_tpl_vars['defaut'] == 'chantierterrestre'): ?> class="hightlight"<?php endif; ?>><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=chantierterrestre&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['batiments']['noms_sing']['7'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<div><table><thead>
<tr><th>Véhicules/Défenses</th><th>Technologies nécessaires (niveau actuel)</th></tr>
</thead><tbody>
<?php $_from = $this->_tpl_vars['unites']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['unite']):
?>
<tr><td><a href="?p=description&amp;d=<?php echo $this->_tpl_vars['key']; ?>
&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
#menu"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['terrestre']['noms_sing'][$this->_tpl_vars['key']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> (<?php echo $this->_tpl_vars['unite']['niveau']; ?>
) :</td><td><?php echo $this->_tpl_vars['unite']['etat']; ?>
</td></tr>
<?php endforeach; endif; unset($_from); ?>
</tbody></table></div>
</div>
<div<?php if ($this->_tpl_vars['defaut'] == 'vaisseaux'): ?> class="hightlight"<?php endif; ?>><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=vaisseaux&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['batiments']['noms_sing']['8'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<div><table><thead>
<tr><th>Vaisseaux</th><th>Technologies nécessaires (niveau actuel)</th></tr>
</thead><tbody>
<?php $_from = $this->_tpl_vars['vaisseaux']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['vaisseau']):
?>
<tr><td><a href="?p=description&amp;v=<?php echo $this->_tpl_vars['key']; ?>
&amp;r=<?php echo $this->_tpl_vars['raceAff']; ?>
#menu"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['raceAff']]['vaisseaux']['noms_sing'][$this->_tpl_vars['key']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> (<?php echo $this->_tpl_vars['vaisseau']['niveau']; ?>
) :</td><td><?php echo $this->_tpl_vars['vaisseau']['etat']; ?>
</td></tr>
<?php endforeach; endif; unset($_from); ?>
</tbody></table></div>
</div>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,105 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 21:18:45
compiled from game/laboratoire.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/laboratoire.tpl', 6, false),array('modifier', 'separerNombres', 'game/laboratoire.tpl', 27, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['technologies']['noms_sing'][$this->_tpl_vars['element']['0']][$this->_tpl_vars['element']['1']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
- <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['2']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script> - <a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucune technologie dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=technologies">Arbre des technologies</a></h3><br />
<h2><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['6'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</h2>
<?php if ($this->_tpl_vars['recherches']): ?>
<table class="construction">
<?php $_from = $this->_tpl_vars['recherches']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['recherche']):
?>
<tr>
<td>
<a class="bulle" href="javascript:alert('Pas de description, arbre en cours de programmation');">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/technologies/<?php echo $this->_tpl_vars['recherche']['image']; ?>
" alt="<?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['technologies']['noms_sing'][$this->_tpl_vars['recherche']['id']][$this->_tpl_vars['recherche']['tech']]; ?>
" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['technologies']['descriptions'][$this->_tpl_vars['recherche']['id']][$this->_tpl_vars['recherche']['tech']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['technologies']['noms_sing'][$this->_tpl_vars['recherche']['id']][$this->_tpl_vars['recherche']['tech']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</strong><br /><br />
<?php if ($this->_tpl_vars['recherche']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['recherche']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['recherche']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['recherche']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['recherche']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['recherche']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['recherche']['nec_credits'] > 0): ?>
<?php if ($this->_tpl_vars['recherche']['nec_credits'] > $this->_tpl_vars['planete']->credits): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['credits']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_credits'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['credits']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['recherche']['nec_credits'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps de recherche : <?php echo $this->_tpl_vars['recherche']['temps']; ?>
<br /><br />
<?php if ($this->_tpl_vars['recherche']['enfile']): ?><a href="<?php echo $this->_tpl_vars['menu']['laboratoire']; ?>
&amp;a=<?php echo $this->_tpl_vars['recherche']['enfile']; ?>
">Arrêter</a>
<?php elseif ($this->_tpl_vars['recherche']['nec_credits'] > $this->_tpl_vars['planete']->credits || $this->_tpl_vars['recherche']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene || $this->_tpl_vars['recherche']['nec_cristal'] > $this->_tpl_vars['planete']->cristal || $this->_tpl_vars['recherche']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['credits'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
insuffisants</span>
<?php else: ?><a href="<?php echo $this->_tpl_vars['menu']['laboratoire']; ?>
&amp;t=<?php echo $this->_tpl_vars['recherche']['id']; ?>
&amp;f=<?php echo $this->_tpl_vars['recherche']['tech']; ?>
">Rechercher</a>
<?php endif; ?>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php else: ?><div class="error" style="color: red;">Aucune technologie à développer actuellement</div><?php endif; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,25 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 19:22:06
compiled from game/footer.tpl */ ?>
<div class="border_bt"></div></div>
<div id="footer">
Réalisé par Halo-Battle Staff<br />
Design by <a href="http://nothing-arts.com" onclick="window.open(this.href); return false;"><ins>nothingarts</ins></a><br />
<br />Actuellement en ligne : <?php echo $this->_tpl_vars['header']['count']['3']; ?>
joueurs<br />
<a href="<?php echo $this->_tpl_vars['link']['accueil']; ?>
">Accueil</a> | <a href="<?php echo $this->_tpl_vars['link']['blog']; ?>
">Blog</a> | <a href="<?php echo $this->_tpl_vars['link']['forum']; ?>
">Forum</a> | <a href="<?php echo $this->_tpl_vars['menu']['chat']; ?>
">Chat</a> | <a href="<?php echo $this->_tpl_vars['menu']['faq']; ?>
">F.A.Q.</a> | <a href="<?php echo $this->_tpl_vars['link']['operateur']; ?>
">Nous contacter</a>
<?php if ($this->_tpl_vars['page'] == 'admin'): ?><?php echo $this->_tpl_vars['analyst']; ?>
<?php endif; ?>
</div>
</div>
</div>
<div id="cornerbt"></div>
<?php echo $this->_tpl_vars['script']; ?>
</body>
</html>

View file

@ -0,0 +1,33 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:45:53
compiled from admin/accueil.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'escape', 'admin/accueil.tpl', 6, false),array('modifier', 'nl2br', 'admin/accueil.tpl', 6, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Evénements</h2>
<em>Heure du serveur: <?php echo $this->_tpl_vars['datehb']; ?>
</em>
<h4>Version du serveur : <a href="./?p=version"><?php echo $this->_tpl_vars['version']; ?>
</a></h4>
<?php $_from = $this->_tpl_vars['news']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['new']):
?>
<h1><strong><?php echo $this->_tpl_vars['new']['titre']; ?>
</strong> : <?php echo ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['new']['contenu'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)))) ? $this->_run_mod_handler('nl2br', true, $_tmp) : smarty_modifier_nl2br($_tmp)); ?>
</h1>
<?php endforeach; endif; unset($_from); ?>
<h2>Infos</h2>
<h4><a href="<?php echo $this->_tpl_vars['menua']['courrier']; ?>
">Messagerie :</a> <?php echo $this->_tpl_vars['nbMail']; ?>
message<?php if ($this->_tpl_vars['nbMail'] > 1): ?>s<?php endif; ?> en attente</h4>
<h4><a href="./<?php echo $this->_tpl_vars['menu']['pilori']; ?>
">Pilori :</a> <?php echo $this->_tpl_vars['nbPilori']; ?>
joueur<?php if ($this->_tpl_vars['nbPilori'] > 1): ?>s<?php endif; ?> dans le pilori de la galaxie</h4>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,68 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 17:23:35
compiled from cms/header.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'sprintf', 'cms/header.tpl', 27, false),)), $this); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="fr" />
<title> ::Halo-Battle:: - <?php echo $this->_tpl_vars['titre']; ?>
</title>
<link rel="stylesheet" href="templates/cms/default.css" type="text/css" media="all" />
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
<script src="<?php echo $this->_tpl_vars['url_images']; ?>
js/game.js" type="text/javascript"></script>
</head>
<body>
<div id="cornertop"></div>
<div id="all">
<div id="header">
<div id="header_link"><span id="date"><?php echo $this->_tpl_vars['date']; ?>
</span> | <a href="<?php echo $this->_tpl_vars['link']['lastNews']; ?>
"><?php echo $this->_tpl_vars['lastNews']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['lastTopic']; ?>
"><?php echo $this->_tpl_vars['lastTopic']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['lastUser']; ?>
"><?php echo $this->_tpl_vars['lastUser']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['lastDownload']; ?>
"><?php echo $this->_tpl_vars['lastDownload']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['lastLink']; ?>
"><?php echo $this->_tpl_vars['lastLink']; ?>
</a></div><a href="<?php echo $this->_tpl_vars['link']['RSS']; ?>
" id="rss"><?php echo $this->_tpl_vars['LANG']['hd_menu_rss']; ?>
</a>
<a href="<?php echo $this->_tpl_vars['link']['self']; ?>
" id="img"><span></span>Halo Battle</a>
<div id="buttons"><div><a href="<?php echo $this->_tpl_vars['link']['accueil']; ?>
"><?php echo $this->_tpl_vars['LANG']['hd_menu_Accueil']; ?>
</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['jeu']; ?>
"><?php echo $this->_tpl_vars['LANG']['hd_menu_Jeu']; ?>
</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['inscription']; ?>
"><?php echo $this->_tpl_vars['LANG']['hd_menu_Inscrire']; ?>
</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['forum']; ?>
"><?php echo $this->_tpl_vars['LANG']['hd_menu_Forum']; ?>
</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['blog']; ?>
"><?php echo $this->_tpl_vars['LANG']['hd_menu_Blog']; ?>
</a></div> <div><a href="http://www.halo.fr/"><?php echo $this->_tpl_vars['LANG']['hd_menu_Hfr']; ?>
</a></div></div>
<form action="#" method="post"><fieldset id="recherche"><input class="text" type="text" name="recherche" value="<?php echo $this->_tpl_vars['LANG']['hd_menu_search']; ?>
" maxlength="128" tabindex="10" onfocus="this.value = this.value!='<?php echo $this->_tpl_vars['LANG']['hd_menu_search']; ?>
'?this.value:''" onblur="this.value=this.value==''?'<?php echo $this->_tpl_vars['LANG']['hd_menu_search']; ?>
':this.value" /><input value="OK" class="submit" type="submit" tabindex="11" /><br /><a href="#" tabindex="12"><?php echo $this->_tpl_vars['LANG']['hd_menu_advSearch']; ?>
</a></fieldset></form>
</div>
<div id="banner">
<?php $_from = $this->_tpl_vars['header']['infos']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['info']):
?>
<div class="bannerleft"<?php if ($this->_tpl_vars['info']['color']): ?> style="color: <?php echo $this->_tpl_vars['info']['color']; ?>
;"<?php endif; ?>><?php echo $this->_tpl_vars['info']['texte']; ?>
</div>
<?php endforeach; endif; unset($_from); ?>
<span id="bannerright"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG']['cntRaces'])) ? $this->_run_mod_handler('sprintf', true, $_tmp, $this->_tpl_vars['header']['count']['1'], $this->_tpl_vars['header']['count']['0']) : smarty_modifier_sprintf($_tmp, $this->_tpl_vars['header']['count']['1'], $this->_tpl_vars['header']['count']['0'])); ?>
</span></div>
<div id="corps">

View file

@ -0,0 +1,105 @@
<?php /* Smarty version 2.6.22, created on 2009-03-03 22:35:19
compiled from game/chantierspatial.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/chantierspatial.tpl', 28, false),array('modifier', 'separerNombres', 'game/chantierspatial.tpl', 30, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['i'] != true): ?><span><strong>Prochain vaisseau </strong> : <em id="resten"></em>
<script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['4']; ?>
,'resten', true);</script></span><?php endif; ?>
<span><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démolition)<?php endif; ?> - <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['3']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script>
- <a href="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler un</a> - <a href="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
&amp;n=<?php echo $this->_tpl_vars['element']['1']; ?>
">Annuler tous</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucun vaisseau dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=vaisseaux">Arbre des technologies</a></h3><br />
<h2>Chantier spatial</h2>
<?php if ($this->_tpl_vars['vaisseaux']): ?>
<table class="construction">
<?php $_from = $this->_tpl_vars['vaisseaux']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['vaisseau']):
?>
<tr>
<td>
<a class="bulle" href="?p=description&amp;v=<?php echo $this->_tpl_vars['vaisseau']['id']; ?>
#menu">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/vaisseaux/<?php echo $this->_tpl_vars['vaisseau']['image']; ?>
" alt="Vaisseaux" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['descriptions'][$this->_tpl_vars['vaisseau']['id']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['noms_sing'][$this->_tpl_vars['vaisseau']['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['vaisseau']['nombre'] > 0): ?> (<?php echo $this->_tpl_vars['vaisseau']['nombre']; ?>
vaisseau<?php if ($this->_tpl_vars['vaisseau']['nombre'] > 1): ?>x<?php endif; ?>)<?php endif; ?></strong><br /><br />
<?php if ($this->_tpl_vars['vaisseau']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['vaisseau']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['vaisseau']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['vaisseau']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['vaisseau']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['vaisseau']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['vaisseau']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps de construction : <?php echo $this->_tpl_vars['vaisseau']['temps']; ?>
<br /><br />
<form action="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
&amp;v=<?php echo $this->_tpl_vars['vaisseau']['id']; ?>
" method="post">
<fieldset>
<input class="text" type="text" name="nombre" value="0" />
<input class="submit" name="vais<?php echo $this->_tpl_vars['vaisseau']['id']; ?>
" type="submit" value="OK" />
</fieldset>
</form>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php else: ?><div class="error" style="color: red;">Aucun vaisseau à construire actuellement.</div><?php endif; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,96 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 19:10:02
compiled from game/batiments.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/batiments.tpl', 6, false),array('modifier', 'separerNombres', 'game/batiments.tpl', 26, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing'][$this->_tpl_vars['element']['0']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['element']['1']): ?> (démolition)<?php endif; ?> - <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['2']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script> - <a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucun b&acirc;timent dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=batiments">Arbre des technologies</a></h3><br />
<h2>B&acirc;timents</h2>
<table class="construction">
<?php $_from = $this->_tpl_vars['batiments']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['batiment']):
?>
<tr>
<td>
<a class="bulle" href="?p=description&amp;b=<?php echo $this->_tpl_vars['batiment']['id']; ?>
#menu">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/batiments/<?php echo $this->_tpl_vars['batiment']['image']; ?>
" alt="<?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing'][$this->_tpl_vars['batiment']['id']]; ?>
" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['descriptions'][$this->_tpl_vars['batiment']['id']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing'][$this->_tpl_vars['batiment']['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['batiment']['niveau'] > 0): ?> (Niveau <?php echo $this->_tpl_vars['batiment']['niveau']; ?>
)<?php endif; ?></strong><br /><br />
<?php if ($this->_tpl_vars['batiment']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['batiment']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['batiment']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['batiment']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['batiment']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['batiment']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['batiment']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps de construction : <?php echo $this->_tpl_vars['batiment']['temps']; ?>
<br /><br />
<?php if ($this->_tpl_vars['batiment']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene || $this->_tpl_vars['batiment']['nec_cristal'] > $this->_tpl_vars['planete']->cristal || $this->_tpl_vars['batiment']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack" title="Rassemblez les ressources manquantes avant de lancer la construction de ce batiment">Ressources insuffisantes</span>
<?php else: ?><?php if ($this->_tpl_vars['planete']->casesRest >= 1): ?><a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
&amp;c=<?php echo $this->_tpl_vars['batiment']['id']; ?>
">Construire</a><?php endif; ?><?php endif; ?>
<?php if ($this->_tpl_vars['batiment']['enfile'] !== false): ?><a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
&amp;a=<?php echo $this->_tpl_vars['batiment']['enfile']; ?>
">Arrêter</a><?php endif; ?>
<?php if ($this->_tpl_vars['batiment']['niveau'] > 0): ?> <a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
&amp;d=<?php echo $this->_tpl_vars['batiment']['id']; ?>
">Démolir un niveau</a><?php endif; ?>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,15 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 22:25:56
compiled from cms/erreur.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'cms/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<div class="error"<?php if ($this->_tpl_vars['couleur']): ?> style="color: <?php echo $this->_tpl_vars['couleur']; ?>
;"<?php endif; ?>><?php echo $this->_tpl_vars['message']; ?>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'cms/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,105 @@
<?php /* Smarty version 2.6.22, created on 2009-03-03 22:26:42
compiled from game/caserne.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/caserne.tpl', 15, false),array('modifier', 'separerNombres', 'game/caserne.tpl', 28, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['i'] != true): ?><span><strong>Prochaine unit&eacute; </strong> : <em id="resten"></em>
<script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['4']; ?>
,'resten', true);</script></span><?php endif; ?>
<span><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démolition)<?php endif; ?> - <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['3']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script>
- <a href="<?php echo $this->_tpl_vars['menu']['caserne']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler un</a> - <a href="<?php echo $this->_tpl_vars['menu']['caserne']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
&amp;n=<?php echo $this->_tpl_vars['element']['1']; ?>
">Annuler tous</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucune unité dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=caserne">Arbre des technologies</a></h3><br />
<h2><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['9'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</h2>
<?php if ($this->_tpl_vars['unites']): ?>
<table class="construction">
<?php $_from = $this->_tpl_vars['unites']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['unite']):
?>
<tr>
<td>
<a class="bulle" href="?p=description&amp;c=<?php echo $this->_tpl_vars['unite']['id']; ?>
#menu">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/caserne/<?php echo $this->_tpl_vars['unite']['image']; ?>
" alt="Unit&eacute; terrestre" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['descriptions'][$this->_tpl_vars['unite']['id']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['noms_sing'][$this->_tpl_vars['unite']['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['unite']['nombre'] > 0): ?> (<?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nombre'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
unité<?php if ($this->_tpl_vars['unite']['nombre'] > 1): ?>s<?php endif; ?>)<?php endif; ?></strong><br /><br />
<?php if ($this->_tpl_vars['unite']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps d'entra&icirc;nement : <?php echo $this->_tpl_vars['unite']['temps']; ?>
<br /><br />
<form action="<?php echo $this->_tpl_vars['menu']['caserne']; ?>
&amp;v=<?php echo $this->_tpl_vars['unite']['id']; ?>
" method="post">
<fieldset>
<input class="text" type="text" name="nombre" value="0" />
<input class="submit" type="submit" value="OK" />
</fieldset>
</form>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php else: ?><div class="error" style="color: red;">Aucune unit&eacute; à entra&icirc;ner actuellement.</div><?php endif; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,49 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 17:16:22
compiled from admin/mail_liste.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'escape', 'admin/mail_liste.tpl', 18, false),array('modifier', 'truncate', 'admin/mail_liste.tpl', 18, false),array('modifier', 'date_format', 'admin/mail_liste.tpl', 19, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<table style="width: 80%;">
<thead>
<tr>
<th>Action</th>
<th>Statut</th>
<th>Emetteur</th>
<th>Sujet</th>
<th>Date</th>
</tr>
</thead>
<tbody>
<?php $_from = $this->_tpl_vars['mails']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['ligne']):
?>
<tr<?php if ($this->_tpl_vars['ligne']['statut'] >= 1): ?> style="background: #<?php if ($this->_tpl_vars['ligne']['statut'] == 1): ?>770000<?php elseif ($this->_tpl_vars['ligne']['statut'] == 2): ?>007700<?php elseif ($this->_tpl_vars['ligne']['statut'] == 3): ?>000077<?php elseif ($this->_tpl_vars['ligne']['statut'] == 4): ?>770077<?php elseif ($this->_tpl_vars['ligne']['statut'] == 5): ?>007777<?php elseif ($this->_tpl_vars['ligne']['statut'] == 6): ?>777700<?php endif; ?>;"<?php endif; ?>>
<td><a href="?p=<?php echo $this->_tpl_vars['linkpage']; ?>
&amp;w=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">STAT</a><br /><a href="?p=<?php echo $this->_tpl_vars['linkpage']; ?>
&amp;v=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">LIRE</a><br /><a href="?p=<?php echo $this->_tpl_vars['linkpage']; ?>
&amp;d=<?php echo $this->_tpl_vars['ligne']['id']; ?>
" onclick="return confirm('Supprimer ce message ?');">SUPPR</a></td>
<td><?php echo $this->_tpl_vars['ligne']['statut']; ?>
</td>
<td><?php echo $this->_tpl_vars['ligne']['pseudo']; ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['titre'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
<br /><?php echo ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['ligne']['contenu'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)))) ? $this->_run_mod_handler('truncate', true, $_tmp, 50) : smarty_modifier_truncate($_tmp, 50)); ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['time'])) ? $this->_run_mod_handler('date_format', true, $_tmp, "%d/%m/%y %H:%M:%S") : smarty_modifier_date_format($_tmp, "%d/%m/%y %H:%M:%S")); ?>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</tbody>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,103 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 21:18:29
compiled from game/defenses.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/defenses.tpl', 27, false),array('modifier', 'separerNombres', 'game/defenses.tpl', 29, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>File d'attente</h2>
<div class="file">
<?php if ($this->_tpl_vars['file']): ?>
<?php $_from = $this->_tpl_vars['file']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['i'] != true): ?><span><strong>Prochaine <?php if ($this->_tpl_vars['element']['5']): ?>unit&eacute;<?php else: ?>d&eacute;fense<?php endif; ?> </strong> : <em id="resten"></em>
<script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['4']; ?>
,'resten', true);</script></span><?php endif; ?>
<span><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démolition)<?php endif; ?> - <em id="reste<?php echo $this->_tpl_vars['key']; ?>
"></em><script type="text/javascript">reste(<?php echo $this->_tpl_vars['element']['3']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', <?php if ($this->_tpl_vars['i'] != true): ?><?php $this->assign('i', true); ?>true<?php else: ?>false<?php endif; ?>);</script>
- <a href="<?php echo $this->_tpl_vars['menu']['defenses']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
">Annuler un</a> - <a href="<?php echo $this->_tpl_vars['menu']['defenses']; ?>
&amp;a=<?php echo $this->_tpl_vars['key']; ?>
&amp;n=<?php echo $this->_tpl_vars['element']['1']; ?>
">Annuler tous</a></span>
<?php endforeach; endif; unset($_from); ?>
<?php else: ?> <span>Aucune d&eacute;fense dans la file d'attente</span><?php endif; ?>
<br />
</div>
<h3><a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
&amp;q=chantierterrestre">Arbre des technologies</a></h3><br />
<h2>Chantier terrestre </h2>
<table class="construction">
<?php $_from = $this->_tpl_vars['unites']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['unite']):
?>
<tr>
<td>
<a class="bulle" href="?p=description&amp;d=<?php echo $this->_tpl_vars['unite']['id']; ?>
#menu">
<img width="130" height="132" src="<?php echo $this->_tpl_vars['url_images']; ?>
images/terrestre/<?php echo $this->_tpl_vars['unite']['image']; ?>
" alt="Déeacute;fense" />
<span><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['descriptions'][$this->_tpl_vars['unite']['id']]; ?>
</span>
</a>
</td>
<td>
<div>
<strong><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_sing'][$this->_tpl_vars['unite']['id']])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
<?php if ($this->_tpl_vars['unite']['nombre'] > 0): ?> (<?php echo $this->_tpl_vars['unite']['nombre']; ?>
unité<?php if ($this->_tpl_vars['unite']['nombre'] > 1): ?>s<?php endif; ?>)<?php endif; ?></strong><br /><br />
<?php if ($this->_tpl_vars['unite']['nec_metal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_metal'] > $this->_tpl_vars['planete']->metal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_metal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_cristal'] > $this->_tpl_vars['planete']->cristal): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_cristal'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > 0): ?>
<?php if ($this->_tpl_vars['unite']['nec_hydrogene'] > $this->_tpl_vars['planete']->hydrogene): ?><span class="lack">Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</span><br />
<?php else: ?>Coût <?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene']; ?>
: <?php echo ((is_array($_tmp=$this->_tpl_vars['unite']['nec_hydrogene'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
<br /><?php endif; ?>
<?php endif; ?>
Temps de construction : <?php echo $this->_tpl_vars['unite']['temps']; ?>
<br /><br />
<form action="<?php echo $this->_tpl_vars['menu']['defenses']; ?>
&amp;v=<?php echo $this->_tpl_vars['unite']['id']; ?>
" method="post">
<fieldset>
<input class="text" type="text" name="nombre" value="0" />
<input class="submit" name="terr<?php echo $this->_tpl_vars['unite']['id']; ?>
" type="submit" value="OK" />
</fieldset>
</form>
</div>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,164 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 19:22:06
compiled from game/accueil.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'escape', 'game/accueil.tpl', 8, false),array('modifier', 'separerNombres', 'game/accueil.tpl', 19, false),array('modifier', 'upper', 'game/accueil.tpl', 27, false),array('modifier', 'ucfirst', 'game/accueil.tpl', 40, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>&Eacute;vénements</h2>
<?php if ($this->_tpl_vars['multi']): ?><strong style="color: #FF0000;"><a href="?p=avertmulti">Multicompte :</a> évitez toute interaction avec <?php $_from = $this->_tpl_vars['multi']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['cmpt']):
?><?php if ($this->_tpl_vars['cmpt']['id_util'] != $this->_tpl_vars['planete']->id_user): ?><?php if ($this->_tpl_vars['key'] > 0): ?>, <?php endif; ?><?php echo $this->_tpl_vars['cmpt']['pseudo']; ?>
<?php endif; ?><?php endforeach; endif; unset($_from); ?> durant cette session.</strong><br /><?php endif; ?>
<?php if ($this->_tpl_vars['planete']->mv < 0): ?><strong style="color: #FF0000;">Une demande de suppression de votre compte est en cours. Il sera supprimé sous 48h.<br />Si vous n'avez pas demandé la suppression de votre compte, <a href="<?php echo $this->_tpl_vars['link']['operateur']; ?>
">contactez un opérateur</a> au plus vite.</strong><?php endif; ?>
<em>Heure du serveur: <?php echo $this->_tpl_vars['datehb']; ?>
</em>
<?php $_from = $this->_tpl_vars['radar']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['flottes']):
?>
<?php $_from = $this->_tpl_vars['flottes']['0']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['flotte']):
?>
<?php if ($this->_tpl_vars['flotte']['mission'] == 1): ?><h4 class="attaque">attaque: Une flotte ennemie en provenance de <?php echo ((is_array($_tmp=$this->_tpl_vars['flotte']['nom_planete'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['flotte']['start_galaxie']; ?>
:<?php echo $this->_tpl_vars['flotte']['start_ss']; ?>
:<?php echo $this->_tpl_vars['flotte']['start_position']; ?>
] atteint la planète <?php echo ((is_array($_tmp=$this->_tpl_vars['flottes']['1']['0'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['flottes']['1']['1']; ?>
:<?php echo $this->_tpl_vars['flottes']['1']['2']; ?>
:<?php echo $this->_tpl_vars['flottes']['1']['3']; ?>
] dans <span id="reste<?php echo $this->_tpl_vars['key']; ?>
"><?php echo $this->_tpl_vars['flotte']['arrive_time']; ?>
</span><script type="text/javascript">reste(<?php echo $this->_tpl_vars['flotte']['arrive_time']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', true);</script></h4>
<?php elseif ($this->_tpl_vars['flotte']['mission'] == 2): ?><h4 class="attaque">transport: Une flotte en provenance de <?php echo ((is_array($_tmp=$this->_tpl_vars['flotte']['nom_planete'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['flotte']['start_galaxie']; ?>
:<?php echo $this->_tpl_vars['flotte']['start_ss']; ?>
:<?php echo $this->_tpl_vars['flotte']['start_position']; ?>
] atteint la planète <?php echo ((is_array($_tmp=$this->_tpl_vars['flottes']['1']['0'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['flottes']['1']['1']; ?>
:<?php echo $this->_tpl_vars['flottes']['1']['2']; ?>
:<?php echo $this->_tpl_vars['flottes']['1']['3']; ?>
] dans <span id="reste<?php echo $this->_tpl_vars['key']; ?>
"><?php echo $this->_tpl_vars['flotte']['arrive_time']; ?>
</span><script type="text/javascript">reste(<?php echo $this->_tpl_vars['flotte']['arrive_time']; ?>
,'reste<?php echo $this->_tpl_vars['key']; ?>
', true);</script></h4>
<?php endif; ?>
<?php endforeach; endif; unset($_from); ?>
<?php endforeach; endif; unset($_from); ?>
<?php if ($this->_tpl_vars['alertMail'] >= 2): ?><h4>messagerie: <a href="?p=messagerie"><?php echo $this->_tpl_vars['alertMail']; ?>
messages non lu</a></h4>
<?php elseif ($this->_tpl_vars['alertMail'] >= 1): ?><h4>messagerie: <a href="?p=messagerie"><?php echo $this->_tpl_vars['alertMail']; ?>
message non lu</a></h4>
<?php endif; ?>
<h3><a href="?p=rename"><?php if (! $this->_tpl_vars['planete']->nom_planete): ?>Sans nom<?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->nom_planete)) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
</a> (<span><?php echo $this->_tpl_vars['planete']->pseudo; ?>
</span>)</h3>
<img src="<?php echo $this->_tpl_vars['url_images']; ?>
images/planetes/<?php echo $this->_tpl_vars['planete']->image; ?>
.jpg" width="200" height="200" alt="Planète" />
<h2>Infos</h2>
<?php if (SURFACE == 'planete'): ?><h4>Diamètre: <?php echo ((is_array($_tmp=$this->_tpl_vars['diametre'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
km <ins>(<?php echo $this->_tpl_vars['planete']->casesRest; ?>
case<?php if ($this->_tpl_vars['planete']->casesRest > 1): ?>s<?php endif; ?> disponible<?php if ($this->_tpl_vars['planete']->casesRest > 1): ?>s<?php endif; ?> sur <?php echo $this->_tpl_vars['planete']->cases; ?>
)</ins></h4><?php endif; ?>
<h4>Race : <?php echo $this->_tpl_vars['planete']->race; ?>
</h4>
<h4>position: <a href="?p=carte&amp;galaxie=<?php echo $this->_tpl_vars['planete']->galaxie; ?>
&amp;ss=<?php echo $this->_tpl_vars['planete']->ss; ?>
"><?php echo $this->_tpl_vars['planete']->galaxie; ?>
.<?php echo $this->_tpl_vars['planete']->ss; ?>
.<?php echo $this->_tpl_vars['planete']->position; ?>
</a></h4>
<?php if (SURFACE == 'planete'): ?>
<h4>population: <?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->population)) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</h4>
<h4>crédits: <?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->credits)) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</h4>
<?php endif; ?>
<h4>Classement: <a href="?p=classement&amp;j=<?php echo $this->_tpl_vars['planete']->id; ?>
&amp;c=<?php echo $this->_tpl_vars['planete']->place_points; ?>
#moi"><?php if ($this->_tpl_vars['planete']->place_points == '0'): ?>non classé<?php else: ?><?php echo $this->_tpl_vars['planete']->place_points; ?>
<?php if ($this->_tpl_vars['planete']->place_points == '1'): ?>er<?php else: ?>ème<?php endif; ?><?php endif; ?> (<?php echo ((is_array($_tmp=$this->_tpl_vars['points'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
points)</a></h4>
<?php if ($this->_tpl_vars['alliance']): ?><h4>Alliance: <a href="?p=alliances">[<?php echo ((is_array($_tmp=$this->_tpl_vars['alliance']['tag'])) ? $this->_run_mod_handler('upper', true, $_tmp) : smarty_modifier_upper($_tmp)); ?>
] <?php echo $this->_tpl_vars['alliance']['nom']; ?>
</a></h4><?php endif; ?>
<?php if (SURFACE == 'planete'): ?>
<h2>En cours sur la planète</h2>
<?php if ($this->_tpl_vars['fileBat']): ?>
<h4>
<?php $_from = $this->_tpl_vars['fileBat']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['i'] == true): ?> - <?php else: ?><?php $this->assign('i', true); ?><a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
">Bâtiments</a> : <?php endif; ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php if ($this->_tpl_vars['element']['1']): ?> (démolition)<?php endif; ?>
<?php endforeach; endif; unset($_from); ?>
</h4>
<?php endif; ?>
<?php if ($this->_tpl_vars['fileCas']): ?>
<h4>
<?php $_from = $this->_tpl_vars['fileCas']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['j'] == true): ?> - <?php else: ?><?php $this->assign('j', true); ?><a href="<?php echo $this->_tpl_vars['menu']['caserne']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['9'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> : <?php endif; ?><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['caserne']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démantèlement)<?php endif; ?>
<?php endforeach; endif; unset($_from); ?>
</h4>
<?php endif; ?>
<?php if ($this->_tpl_vars['fileVais']): ?>
<h4>
<?php $_from = $this->_tpl_vars['fileVais']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['k'] == true): ?> - <?php else: ?><?php $this->assign('k', true); ?><a href="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['8'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> : <?php endif; ?><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['vaisseaux']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démantèlement)<?php endif; ?>
<?php endforeach; endif; unset($_from); ?>
</h4>
<?php endif; ?>
<?php if ($this->_tpl_vars['fileTer']): ?>
<h4>
<?php $_from = $this->_tpl_vars['fileTer']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['l'] == true): ?> - <?php else: ?><?php $this->assign('l', true); ?><a href="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['7'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> : <?php endif; ?><?php echo $this->_tpl_vars['element']['1']; ?>
<?php if ($this->_tpl_vars['element']['1'] > 1): ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_pluriel'][$this->_tpl_vars['element']['0']]; ?>
<?php else: ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['terrestre']['noms_sing'][$this->_tpl_vars['element']['0']]; ?>
<?php endif; ?><?php if ($this->_tpl_vars['element']['2']): ?> (démantèlement)<?php endif; ?>
<?php endforeach; endif; unset($_from); ?>
</h4>
<?php endif; ?>
<?php if ($this->_tpl_vars['fileTech']): ?>
<h4>
<?php $_from = $this->_tpl_vars['fileTech']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['element']):
?>
<?php if ($this->_tpl_vars['m'] == true): ?> - <?php else: ?><?php $this->assign('m', true); ?><a href="<?php echo $this->_tpl_vars['menu']['laboratoire']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['6'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a> : <?php endif; ?><?php echo $this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['technologies']['noms_sing'][$this->_tpl_vars['element']['0']][$this->_tpl_vars['element']['1']]; ?>
<?php endforeach; endif; unset($_from); ?>
</h4>
<?php endif; ?>
<?php endif; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,68 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:55:32
compiled from game/ressources.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/ressources.tpl', 5, false),array('modifier', 'separernombres', 'game/ressources.tpl', 7, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Ressources : Tableau r&eacute;capitulatif des productions par heure</h2>
<form method="post" action="<?php echo $this->_tpl_vars['menu']['ressources']; ?>
">
<table>
<thead><tr><th> </th><th>Coefficient</th><th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th><th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th><th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th><th><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['energie'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</th></tr></thead>
<tbody>
<tr><td><?php echo $this->_tpl_vars['planete']->batiments['0']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['0'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td><input type="text" name="coeff_metal" value="<?php echo $this->_tpl_vars['ressources_coef']['0']; ?>
" maxlength="3" size="3" />%</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['0'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td>0</td><td>0</td><td class="lack">-<?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_conso']['0'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr>
<?php if ($this->_tpl_vars['planete']->batiments['1']): ?><tr><td><?php echo $this->_tpl_vars['planete']->batiments['1']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['1'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td><input type="text" name="coeff_cristal" value="<?php echo $this->_tpl_vars['ressources_coef']['1']; ?>
" maxlength="3" size="3" />%</td><td>0</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td>0</td><td class="lack">-<?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_conso']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr><?php endif; ?>
<?php if ($this->_tpl_vars['planete']->batiments['2']): ?><tr><td><?php echo $this->_tpl_vars['planete']->batiments['2']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['2'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td><input type="text" name="coeff_hydrogene" value="<?php echo $this->_tpl_vars['ressources_coef']['2']; ?>
" maxlength="3" size="3" />%</td><td>0</td><td>0</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['2'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td class="lack">-<?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_conso']['2'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr><?php endif; ?>
<tr><td><?php echo $this->_tpl_vars['planete']->batiments['3']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['3'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td><input type="text" name="coeff_cs" value="<?php echo $this->_tpl_vars['ressources_coef']['3']; ?>
" maxlength="3" size="3" />%</td><td>0</td><td>0</td><td>0</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['3'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr>
<?php if ($this->_tpl_vars['planete']->batiments['4']): ?><tr><td><?php echo $this->_tpl_vars['planete']->batiments['4']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['4'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td><input type="text" name="coeff_ce" value="<?php echo $this->_tpl_vars['ressources_coef']['4']; ?>
" maxlength="3" size="3" />%</select></td><td>0</td><td>0</td><td class="lack">-<?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_conso']['3'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['4'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr><?php endif; ?>
<tr><td><?php echo $this->_tpl_vars['planete']->batiments['10']; ?>
<?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['10'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td><td>-</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_silo']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_silo']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_silo']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td>0</td></tr>
<tr><td><strong>Total</strong></td><td>-</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['0'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_prod']['1'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td><td><?php if ($this->_tpl_vars['planete']->batiments['3']): ?><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_toto']['0'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
<?php else: ?>0<?php endif; ?></td><td<?php if ($this->_tpl_vars['planete']->energieConso >= $this->_tpl_vars['planete']->energie): ?> class="lack"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['ressources_conso']['4'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td></tr>
</tbody>
</table>
<input type="submit" class="submit" value="GO" /><br /><br />
</form>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,47 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 17:23:35
compiled from cms/mini.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'sprintf', 'cms/mini.tpl', 26, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'cms/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<div id="connexion" class="block">
<div class="header"><?php echo $this->_tpl_vars['LANG']['mod_login_titre']; ?>
</div>
<div class="corps">
<form action="?p=connexion" method="post">
<fieldset>
<span>
<input type="text" class="text" name="HB_login" maxlength="32" tabindex="1" />
<input type="password" class="password" name="HB_password" maxlength="32" tabindex="2" />
<input type="submit" class="submit" value="GO" tabindex="3" />
</span>
<span>
<label for="galaxie"><?php echo $this->_tpl_vars['LANG']['mod_login_galaxie']; ?>
:</label>
<select name="galaxie" id="galaxie">
<optgroup label="Galaxies standards">
<option> Alpha</option>
</optgroup>
</select>
<a href="<?php echo $this->_tpl_vars['link']['oubliemdp']; ?>
" tabindex="4"><?php echo $this->_tpl_vars['LANG']['mod_login_forgotMdp']; ?>
</a>
</span>
</fieldset>
</form>
</div>
</div>
<div id="inscription" class="block"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG']['mod_inscription_texte'])) ? $this->_run_mod_handler('sprintf', true, $_tmp, $this->_tpl_vars['link']['inscription'], $this->_tpl_vars['link']['inscription'], $this->_tpl_vars['link']['inscription']) : smarty_modifier_sprintf($_tmp, $this->_tpl_vars['link']['inscription'], $this->_tpl_vars['link']['inscription'], $this->_tpl_vars['link']['inscription'])); ?>
</div>
<div id="dernierminute" class="block">
<a href="http://www.halo.fr/" onclick="window.open(this.href); return false;"><img src="images/hfr.jpg" alt="Halo.fr" /></a>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'cms/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,55 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 17:59:03
compiled from admin/bandeau.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'escape', 'admin/bandeau.tpl', 14, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Informations visibles</h2>
<table>
<thead>
<tr>
<th>Action</th>
<th>Texte</th>
</tr>
</thead>
<tbody>
<?php $_from = $this->_tpl_vars['tableau']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['ligne']):
?>
<tr>
<td><a href="<?php echo $this->_tpl_vars['menu']['bandeau']; ?>
&amp;i=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">EDIT</a> | <a href="<?php echo $this->_tpl_vars['menu']['bandeau']; ?>
&amp;d=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">SUPPR</a></td>
<td<?php if ($this->_tpl_vars['ligne']['color']): ?> style="color: <?php echo $this->_tpl_vars['ligne']['color']; ?>
;"<?php endif; ?>><b><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['texte'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
</b></td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</tbody>
</table>
<h2><?php if ($this->_tpl_vars['id'] == 'add'): ?>Ajouter<?php else: ?>Modifier<?php endif; ?> une information<?php if ($this->_tpl_vars['id'] != 'add'): ?> : <?php echo $this->_tpl_vars['id']; ?>
<?php endif; ?></h2>
<form action="<?php echo $this->_tpl_vars['menu']['bandeau']; ?>
&amp;i=<?php echo $this->_tpl_vars['id']; ?>
" method="post">
<fieldset class="options">
<label for="texte">Texte :</label> <input type="text" name="texte" id="texte" value="<?php echo ((is_array($_tmp=$this->_tpl_vars['mod']['texte'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
" size="40" maxlength="255" /><br /><br />
<label for="color">Couleur :</label> <input type="text" name="color" id="color" value="<?php echo ((is_array($_tmp=$this->_tpl_vars['mod']['color'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
" size="25" maxlength="255" /><br /><br />
<input type="submit" class="submit" value="GO" />
</fieldset>
</form>
<h2>Gestion du cache</h2>
<a href="<?php echo $this->_tpl_vars['menu']['bandeau']; ?>
&amp;actuCache">Mettre à jour le cache</a>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,15 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 18:23:03
compiled from game/vp.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<div class="error">... veuillez patienter ...</div>
<?php echo $this->_tpl_vars['contenu']; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,121 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:55:39
compiled from game/gestion.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('function', 'html_options', 'game/gestion.tpl', 6, false),array('modifier', 'date_format', 'game/gestion.tpl', 7, false),array('modifier', 'escape', 'game/gestion.tpl', 25, false),array('modifier', 'ucfirst', 'game/gestion.tpl', 31, false),array('modifier', 'separernombres', 'game/gestion.tpl', 34, false),array('modifier', 'separerNombres', 'game/gestion.tpl', 55, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Politique</h2>
<form action="<?php echo $this->_tpl_vars['menu']['gestion']; ?>
" method="post">
<fieldset class="options">
<label for="politique">Politique actuelle :</label>
<select name="politique" id="politique"><?php echo smarty_function_html_options(array('options' => $this->_tpl_vars['politiques'],'selected' => $this->_tpl_vars['planete']->politique), $this);?>
</select><br /><br />
<label>Dernier changement de régime :</label><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->politique_lastchange)) ? $this->_run_mod_handler('date_format', true, $_tmp, "%A %d %B %y") : smarty_modifier_date_format($_tmp, "%A %d %B %y")); ?>
<br /><br />
<label>Moral global de la population :</label><acronym title=""><?php echo $this->_tpl_vars['planete']->moral*100; ?>
%</acronym><br /><br /><br />
<input class="submit" type="submit" value="Ok" />
</fieldset>
</form>
<h2>Gestion</h2>
<div id="gestion">
<table>
<thead>
<tr>
<td></td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<td><img src="<?php echo $this->_tpl_vars['url_images']; ?>
images/planetes/<?php echo $this->_tpl_vars['plan']['image']; ?>
.jpg" alt="<?php echo $this->_tpl_vars['plan']['image']; ?>
" title="<?php echo $this->_tpl_vars['plan']['nom_planete']; ?>
" width="80" height="80" /></td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<th></th>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<th><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['nom_planete'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
</th>
<?php endforeach; endif; unset($_from); ?>
</tr>
</thead>
<tbody>
<tr>
<td class="hightlight"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planeteEC']['id']): ?><?php $this->assign('plan', $this->_tpl_vars['planeteEC']); ?><?php endif; ?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['metal'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<td class="hightlight"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planeteEC']['id']): ?><?php $this->assign('plan', $this->_tpl_vars['planeteEC']); ?><?php endif; ?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['cristal'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<td class="hightlight"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planeteEC']['id']): ?><?php $this->assign('plan', $this->_tpl_vars['planeteEC']); ?><?php endif; ?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['hydrogene'])) ? $this->_run_mod_handler('separernombres', true, $_tmp) : separernombres($_tmp)); ?>
</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<td class="hightlight"><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['energie'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planeteEC']['id']): ?><?php $this->assign('plan', $this->_tpl_vars['planeteEC']); ?><?php endif; ?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['energie'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<td class="hightlight">Population</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planeteEC']['id']): ?><?php $this->assign('plan', $this->_tpl_vars['planeteEC']); ?><?php endif; ?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['population'])) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
<tr>
<td class="hightlight">Moral</td>
<?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['moral']*100)) ? $this->_run_mod_handler('separerNombres', true, $_tmp) : separerNombres($_tmp)); ?>
%</td>
<?php endforeach; endif; unset($_from); ?>
</tr>
</tbody>
</table>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,56 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 16:34:38
compiled from game/operateur.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Opérateurs de cette galaxie</h2>
<ul>
<?php $_from = $this->_tpl_vars['operateurs']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['operateur']):
?>
<li><?php echo $this->_tpl_vars['operateur']['pseudo']; ?>
<i>(<?php if ($this->_tpl_vars['operateur']['auth_level'] == 2): ?>Modérateur<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 3): ?>Maître de la bourse<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 4): ?>Opérateur en formation<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 5): ?>Opérateur<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 6): ?>Super-opérateur<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 7): ?>Administrateur<?php elseif ($this->_tpl_vars['operateur']['auth_level'] == 8): ?>Codeur<?php endif; ?>)</i></li>
<?php endforeach; endif; unset($_from); ?>
</ul>
<h2>Problèmes connus</h2>
<strong>Lisez les questions/réponses ci-dessous. Ne contactez un opérateur que si vous ne pouvez pas résoudre votre problème/demande.</strong><br />
<strong>N'oubliez pas de contacter les opérateurs pour les raisons indiquées dans les <a href="?p=regles">règles du jeu</a>.</strong>
<?php $_from = $this->_tpl_vars['questions']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['question']):
?>
<dl>
<dt><input class="button2" type="button" onclick="hide(this); return false;" /><?php echo $this->_tpl_vars['question']['0']; ?>
</dt><dd><?php echo $this->_tpl_vars['question']['1']; ?>
<?php if ($this->_tpl_vars['auth_level'] > 4): ?><div style="text-align: right"><a href="<?php echo $this->_tpl_vars['menu']['operateur']; ?>
&amp;a=top&amp;i=<?php echo $this->_tpl_vars['question']['2']; ?>
"><i>Haut</i></a> - <a href="<?php echo $this->_tpl_vars['menu']['operateur']; ?>
&amp;a=bas&amp;i=<?php echo $this->_tpl_vars['question']['2']; ?>
"><i>Bas</i></a> - <a href="<?php echo $this->_tpl_vars['menu']['operateur']; ?>
&amp;a=del&amp;i=<?php echo $this->_tpl_vars['question']['2']; ?>
"><i>Supprimer</i></a></div><?php endif; ?></dd>
</dl>
<?php endforeach; endif; unset($_from); ?>
<?php if ($this->_tpl_vars['auth_level'] >= 5): ?>
<h2>Ajouter un problème connu</h2>
<form action="<?php echo $this->_tpl_vars['menu']['operateur']; ?>
&amp;post" method="post"><fieldset class="options">
<label for="O_titre">Problème :</label><input class="text" type="text" name="O_titre" id="O_titre" />
<label for="O_desc">Solution :</label>
<textarea id="O_desc" name="O_description" cols="40" rows="10"></textarea><br /><br />
<input class="submit" type="submit" value="OK" />
</fieldset></form>
<?php else: ?><h2>Prendre contact avec les opérateurs de la galaxie</h2>
<form action="<?php echo $this->_tpl_vars['menu']['operateur']; ?>
&amp;post" method="post"><fieldset class="options">
<label for="titre">Titre/objet :</label><input class="text" type="text" name="titre" id="titre" />
<label for="desc">Corps :</label>
<textarea id="desc" name="description" cols="40" rows="10"></textarea><br /><br />
<input class="submit" type="submit" value="OK" />
</fieldset></form><?php endif; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,15 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 18:52:59
compiled from game/erreur.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<div class="error"<?php if ($this->_tpl_vars['couleur']): ?> style="color: <?php echo $this->_tpl_vars['couleur']; ?>
;"<?php endif; ?>><?php echo $this->_tpl_vars['message']; ?>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,60 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 16:36:43
compiled from admin/mail_view.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'date_format', 'admin/mail_view.tpl', 14, false),array('modifier', 'escape', 'admin/mail_view.tpl', 18, false),array('modifier', 'nl2br', 'admin/mail_view.tpl', 23, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<table style="width: 90%;">
<thead<?php if ($this->_tpl_vars['req']['statut'] >= 1): ?> style="background: #<?php if ($this->_tpl_vars['req']['statut'] == 1): ?>770000<?php elseif ($this->_tpl_vars['req']['statut'] == 2): ?>007700<?php elseif ($this->_tpl_vars['req']['statut'] == 3): ?>000077<?php elseif ($this->_tpl_vars['req']['statut'] == 4): ?>770077<?php elseif ($this->_tpl_vars['req']['statut'] == 5): ?>007777<?php elseif ($this->_tpl_vars['req']['statut'] == 6): ?>777700<?php endif; ?>;"<?php endif; ?>>
<tr>
<th colspan="2">Emetteur</th>
<td colspan="3"><?php echo $this->_tpl_vars['req']['pseudo']; ?>
</td>
</tr>
<tr>
<th colspan="2">Statut</th>
<td colspan="3"><?php echo $this->_tpl_vars['req']['statut']; ?>
</td>
</tr>
<tr>
<th colspan="2">Date</th>
<td colspan="3"><?php echo ((is_array($_tmp=$this->_tpl_vars['req']['time'])) ? $this->_run_mod_handler('date_format', true, $_tmp, "%d/%m/%y %H:%M:%S") : smarty_modifier_date_format($_tmp, "%d/%m/%y %H:%M:%S")); ?>
</td>
</tr>
<tr>
<th colspan="2">Objet</th>
<td colspan="3"><?php echo ((is_array($_tmp=$this->_tpl_vars['req']['titre'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
</td>
</tr>
</thead>
<tbody>
<tr>
<td colspan="5"><?php echo ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['req']['contenu'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)))) ? $this->_run_mod_handler('nl2br', true, $_tmp) : smarty_modifier_nl2br($_tmp)); ?>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td><a href="./<?php echo $this->_tpl_vars['premiere_page']; ?>
?p=envoyer&amp;d=<?php echo $this->_tpl_vars['req']['pseudo']; ?>
&amp;o=Re : <?php echo ((is_array($_tmp=$this->_tpl_vars['req']['titre'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
" onclick="window.open(this.href); return false;">Répondre</a></td>
<td><a href="?p=courrier&amp;d=<?php echo $this->_tpl_vars['req']['id']; ?>
">Supprimer</a></td>
<td><a href="?p=courrier&amp;x=<?php echo $this->_tpl_vars['req']['id']; ?>
">Statut</a></td>
<td><a href="?p=courrier">Retour</a></td>
<td><a href="?p=courrier&amp;v=<?php echo $this->_tpl_vars['req']['id']-1; ?>
">&lt;&lt;&lt;</a> - <a href="?p=courrier&amp;v=<?php echo $this->_tpl_vars['req']['id']+1; ?>
">&gt;&gt;&gt;</a></td>
</tr>
</tfoot>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,63 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:34:13
compiled from admin/version.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'nl2br', 'admin/version.tpl', 28, false),array('modifier', 'date_format', 'admin/version.tpl', 29, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Gestion du cache</h2>
<a href="<?php echo $this->_tpl_vars['menu']['versions']; ?>
&amp;actuCache">Mettre à jour le cache</a>
<h2><?php if ($this->_tpl_vars['id'] == 'add'): ?>Ajouter<?php else: ?>Modifier<?php endif; ?> une version<?php if ($this->_tpl_vars['id'] != 'add'): ?> : <?php echo $this->_tpl_vars['id']; ?>
<?php endif; ?></h2>
<form action="<?php echo $this->_tpl_vars['menu']['versions']; ?>
&amp;i=<?php echo $this->_tpl_vars['id']; ?>
" method="post">
<fieldset class="options">
<label for="version">Version :</label> <input type="text" name="version" id="version" value="<?php echo $this->_tpl_vars['mod']['version']; ?>
" /><br />
<label for="contenu">Contenu :</label><br /><textarea cols="10" rows="10" name="contenu" id="contenu"><?php echo $this->_tpl_vars['mod']['contenu']; ?>
</textarea><br />
<input type="submit" class="submit" value="GO" />
</fieldset>
</form>
<h2>Liste des versions</h2>
<table>
<thead>
<tr>
<th>Action</th>
<th>Version</th>
<th>Infos</th>
<th>Date</th>
<th>Par</th>
</tr>
</thead>
<tbody>
<?php $_from = $this->_tpl_vars['tableau']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['ligne']):
?>
<tr>
<td><a href="<?php echo $this->_tpl_vars['menu']['versions']; ?>
&amp;i=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">EDIT</a> | <a href="<?php echo $this->_tpl_vars['menu']['versions']; ?>
&amp;d=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">SUPPR</a></td>
<td><?php echo $this->_tpl_vars['ligne']['version']; ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['contenu'])) ? $this->_run_mod_handler('nl2br', true, $_tmp) : smarty_modifier_nl2br($_tmp)); ?>
</td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['temps'])) ? $this->_run_mod_handler('date_format', true, $_tmp, "%d/%m/%y %H:%M:%S") : smarty_modifier_date_format($_tmp, "%d/%m/%y %H:%M:%S")); ?>
</td>
<td><?php echo $this->_tpl_vars['ligne']['pseudo']; ?>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</tbody>
</table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,61 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:47:27
compiled from admin/demarrage.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'escape', 'admin/demarrage.tpl', 17, false),array('modifier', 'date_format', 'admin/demarrage.tpl', 18, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<a href="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
&amp;i=add">Créer une nouvelle page</a>
<h2>Pages de démarrage</h2>
<h3>La première news est celle qui sera affichée à la connexion des joueurs</h3>
<table>
<thead>
<tr>
<th>Action</th>
<th>Titre</th>
<th>Date de visibilité</th>
</tr>
</thead>
<tbody>
<?php $_from = $this->_tpl_vars['tableau']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['ligne']):
?>
<tr>
<td><a href="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
&amp;i=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">EDIT</a> | <a href="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
&amp;d=<?php echo $this->_tpl_vars['ligne']['id']; ?>
">SUPPR</a></td>
<td><b><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['titre'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
</b></td>
<td><?php echo ((is_array($_tmp=$this->_tpl_vars['ligne']['time'])) ? $this->_run_mod_handler('date_format', true, $_tmp, "%d/%m/%y %H:%M:%S") : smarty_modifier_date_format($_tmp, "%d/%m/%y %H:%M:%S")); ?>
</td>
</tr>
<?php endforeach; endif; unset($_from); ?>
</tbody>
</table>
<h2>Gestion du cache</h2>
<a href="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
&amp;actuCache">Mettre à jour le cache</a>
<h2><?php if ($this->_tpl_vars['id'] == 'add'): ?>Ajouter<?php else: ?>Modifier<?php endif; ?> une page de démarrage<?php if ($this->_tpl_vars['id'] != 'add'): ?> : <?php echo $this->_tpl_vars['id']; ?>
<?php endif; ?></h2>
<form action="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
&amp;i=<?php echo $this->_tpl_vars['id']; ?>
" method="post">
<fieldset class="options">
<label for="titre">Titre :</label> <input type="text" name="titre" id="titre" value="<?php echo $this->_tpl_vars['mod']['titre']; ?>
" /><br />
<label for="contenu">Texte :</label><br /><textarea name="contenu" id="contenu" rows="10" cols="10"><?php echo $this->_tpl_vars['mod']['contenu']; ?>
</textarea><br />
<?php if ($this->_tpl_vars['mod']['titre']): ?><input type="checkbox" name="reset" id="reset" value="1" /><label for="reset"> Actualiser la date et l'heure d'écriture</label> <i>Les utilisateurs ayant déjà vu la page la revéront de nouveau.</i><br /><br /><br /><?php endif; ?>
<input type="submit" class="submit" value="GO" />
</fieldset>
</form>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,29 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 17:23:35
compiled from cms/footer.tpl */ ?>
</div>
<div id="footer">
<?php echo $this->_tpl_vars['LANG']['foot_realise']; ?>
Anomaly Concepts<br />
<?php echo $this->_tpl_vars['LANG']['foot_design']; ?>
<a href="http://www.nothing-arts.com" onclick="window.open(this.href); return false;"><ins>nothingarts</ins></a><br /><br />
<!--Site visité 514200 fois depuis sa création<br />-->
<a href="<?php echo $this->_tpl_vars['link']['accueil']; ?>
"><?php echo $this->_tpl_vars['LANG']['foot_menu_Accueil']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['inscription']; ?>
"><?php echo $this->_tpl_vars['LANG']['foot_menu_Inscrire']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['forum']; ?>
"><?php echo $this->_tpl_vars['LANG']['foot_menu_Forum']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['staff']; ?>
"><?php echo $this->_tpl_vars['LANG']['foot_menu_Staff']; ?>
</a> | <a href="<?php echo $this->_tpl_vars['link']['faq']; ?>
"><?php echo $this->_tpl_vars['LANG']['foot_menu_Faq']; ?>
</a>
</div>
</div>
<div id="cornerbt"></div>
<?php echo $this->_tpl_vars['script']; ?>
<!-- \\******* By Phantom *******// Halo-Battle, Tous droits réservés -->
</body>
</html>

View file

@ -0,0 +1,218 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 19:22:06
compiled from game/header.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'ucfirst', 'game/header.tpl', 62, false),array('modifier', 'escape', 'game/header.tpl', 96, false),array('modifier', 'separenombre', 'game/header.tpl', 98, false),)), $this); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="fr" />
<meta http-equiv="ext-Cache" content="0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="pragma" content="no-cache" />
<title><?php echo $this->_tpl_vars['titre']; ?>
</title>
<?php if ($this->_tpl_vars['race'] == 'covenant'): ?><link rel="stylesheet" href="<?php echo $this->_tpl_vars['url_images']; ?>
templates/covenants.css" type="text/css" media="all" title="Covenants" /><?php elseif ($this->_tpl_vars['auth_level'] >= 3): ?><link rel="alternate stylesheet" href="templates/covenants.css" type="text/css" media="all" title="Covenants" /><?php endif; ?>
<?php if ($this->_tpl_vars['race'] == 'humain'): ?><link rel="stylesheet" href="<?php echo $this->_tpl_vars['url_images']; ?>
templates/csnu.css" type="text/css" media="all" title="CSNU" /><?php elseif ($this->_tpl_vars['auth_level'] >= 3): ?><link rel="alternate stylesheet" href="templates/csnu.css" type="text/css" media="all" title="CSNU" /><?php endif; ?>
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
<script src="<?php echo $this->_tpl_vars['url_images']; ?>
js/game.js" type="text/javascript"></script>
<?php echo $this->_tpl_vars['scripth']; ?>
</head>
<body>
<div id="cornertop"></div>
<div id="all">
<div id="header">
<div id="header_link"><span id="date"><?php echo $this->_tpl_vars['date']; ?>
</span> | Vous jouez depuis <?php echo $this->_tpl_vars['tpsdejeu']; ?>
| <a href="?p=version">Version <?php echo $this->_tpl_vars['version']; ?>
</a><?php if ($this->_tpl_vars['multi']): ?> | <a href="?p=avertmulti" style="color: #FF0000;">! MULTICOMPTE !</a><?php endif; ?><?php if ($this->_tpl_vars['header']['messagedemarrage']): ?> | <a href="?p=demarrage"><?php echo $this->_tpl_vars['header']['messagedemarrage']; ?>
</a><?php endif; ?><?php if ($this->_tpl_vars['planete']->mv < 0): ?> | <a href="?p=accueil" style="color: #FF0000;">Votre compte sera supprimé d'ici 48h</a><?php endif; ?></div><a href="<?php echo $this->_tpl_vars['link']['RSS']; ?>
" id="rss">RSS :: s'abonner</a>
<h1><a href="<?php echo $this->_tpl_vars['link']['self']; ?>
<?php echo $this->_tpl_vars['first_page']; ?>
"><span></span>Halo Battle</a></h1>
<?php if ($this->_tpl_vars['page'] == 'admin'): ?> <div id="buttons"><div><a href="./">RETOUR AU JEU</a></div> <div><a href="<?php echo $this->_tpl_vars['menu']['webmail']; ?>
">WEBMAIL</a></div> <div><a href="<?php echo $this->_tpl_vars['menu']['controle']; ?>
">CONTROLE JOU.</a></div> <div><a href="<?php echo $this->_tpl_vars['menu']['vjoueurs']; ?>
">VERIFIER JOUEUR</a></div> <div><a href="<?php echo $this->_tpl_vars['menu']['vplanetes']; ?>
">VERIFIER PLANETE</a></div> <div><a href="./<?php echo $this->_tpl_vars['link']['operateur']; ?>
">OPERATEUR !</a></div></div>
<?php else: ?> <div id="buttons"><div><a href="<?php echo $this->_tpl_vars['link']['accueil']; ?>
">ACCUEIL</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['blog']; ?>
">BLOG</a></div> <div><a href="<?php echo $this->_tpl_vars['link']['forum']; ?>
">FORUM</a></div> <div><a href="<?php echo $this->_tpl_vars['menu']['chat']; ?>
">CHAT</a></div> <div><?php if ($this->_tpl_vars['auth_level'] >= 4): ?><a href="admin.php">CONTROLES</a><?php else: ?><a href="<?php echo $this->_tpl_vars['menu']['faq']; ?>
">F.A.Q.</a><?php endif; ?></div> <div><a href="<?php echo $this->_tpl_vars['link']['operateur']; ?>
">OPERATEUR !</a></div></div><?php endif; ?>
<form action="#" method="post"><fieldset id="recherche"><input class="text" type="text" name="recherche" value="rechercher..." onfocus="this.value = this.value!='rechercher...'?this.value:''" onblur="this.value=this.value==''?'rechercher...':this.value" /><input value="OK" class="submit" type="submit" /><br /><a href="#">Recherche Avancée</a></fieldset></form>
</div>
<div id="banner">
<?php $_from = $this->_tpl_vars['header']['infos']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['info']):
?>
<div class="bannerleft"<?php if ($this->_tpl_vars['info']['color']): ?> style="color: <?php echo $this->_tpl_vars['info']['color']; ?>
;"<?php endif; ?>><?php echo $this->_tpl_vars['info']['texte']; ?>
</div>
<?php endforeach; endif; unset($_from); ?>
<div id="bannerright"><?php echo $this->_tpl_vars['header']['count']['0']; ?>
Marines et <?php echo $this->_tpl_vars['header']['count']['1']; ?>
Covenants se battent dans <ins><?php echo $this->_tpl_vars['header']['count']['2']; ?>
galaxie<?php if ($this->_tpl_vars['header']['count']['2'] > 1): ?>s<?php endif; ?></ins></div>
</div>
<div>
<div id="menu"><div class="menu_head"></div>
<?php if ($this->_tpl_vars['page'] == 'admin'): ?> <a href="<?php echo $this->_tpl_vars['menu']['accueil']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'accueil'): ?> class="hightlight"<?php endif; ?>>Accueil</a>
<a href="<?php echo $this->_tpl_vars['menu']['courrier']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'mail'): ?> class="hightlight"<?php endif; ?>>Courrier</a>
<a href="<?php echo $this->_tpl_vars['menu']['webmail']; ?>
" onclick="window.open(this.href); return false;">Webmail</a>
<div class="space"></div>
<a href="<?php echo $this->_tpl_vars['menu']['vip']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'vip'): ?> class="hightlight"<?php endif; ?>>Vérifier IP</a>
<a href="<?php echo $this->_tpl_vars['menu']['vflottes']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'vflotte'): ?> class="hightlight"<?php endif; ?>>Vérifier flottes</a>
<a href="<?php echo $this->_tpl_vars['menu']['vplanetes']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'print_choixP'): ?> class="hightlight"<?php endif; ?>>Vérifier planètes</a>
<a href="<?php echo $this->_tpl_vars['menu']['vjoueurs']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'vjoueurs'): ?> class="hightlight"<?php endif; ?>>Vérifier joueurs</a>
<a href="<?php echo $this->_tpl_vars['menu']['valliances']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'valliances'): ?> class="hightlight"<?php endif; ?>>Vérifier alliances</a>
<a href="<?php echo $this->_tpl_vars['menu']['vrapports']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'vrapports'): ?> class="hightlight"<?php endif; ?>>Afficher rapports</a>
<div class="space"></div>
<a href="<?php echo $this->_tpl_vars['menu']['sjoueurs']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'sanctionU_choix'): ?> class="hightlight"<?php endif; ?>>Sanctions joueur</a>
<a href="<?php echo $this->_tpl_vars['menu']['sancp']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'sancp'): ?> class="hightlight"<?php endif; ?>>Sanctions planète</a>
<a href="<?php echo $this->_tpl_vars['menu']['controle']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'controle'): ?> class="hightlight"<?php endif; ?>>Prendre le contrôle</a>
<a href="<?php echo $this->_tpl_vars['menu']['djoueurs']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'sjoueurs'): ?> class="hightlight"<?php endif; ?>>Supprimer joueurs</a>
<a href="<?php echo $this->_tpl_vars['menu']['inscription']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'inscription'): ?> class="hightlight"<?php endif; ?>>Créer lien d'inscription</a>
<div class="space"></div>
<a href="<?php echo $this->_tpl_vars['menu']['bandeau']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'bandeau'): ?> class="hightlight"<?php endif; ?>>Bandeau d'informations</a>
<a href="<?php echo $this->_tpl_vars['menu']['demarrage']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'demarrage'): ?> class="hightlight"<?php endif; ?>>Message démarrage</a>
<a href="<?php echo $this->_tpl_vars['menu']['versions']; ?>
"<?php if ($this->_tpl_vars['pagea'] == 'version'): ?> class="hightlight"<?php endif; ?>>Versions</a>
<div class="space"></div>
<?php elseif (SURFACE == 'asteroide'): ?> <a href="<?php echo $this->_tpl_vars['menu']['accueil']; ?>
"<?php if ($this->_tpl_vars['page'] == 'accueil'): ?> class="hightlight"<?php endif; ?>>Accueil</a>
<a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
"<?php if ($this->_tpl_vars['page'] == 'batiments'): ?> class="hightlight"<?php endif; ?>>B&acirc;timents</a>
<a href="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
"<?php if ($this->_tpl_vars['page'] == 'chantierspatial'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['8'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<a href="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
"<?php if ($this->_tpl_vars['page'] == 'chantierterrestre'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['7'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<a href="<?php echo $this->_tpl_vars['menu']['defenses']; ?>
"<?php if ($this->_tpl_vars['page'] == 'defenses'): ?> class="hightlight"<?php endif; ?>>Défenses</a>
<div class="space"></div>
<?php else: ?> <a href="<?php echo $this->_tpl_vars['menu']['accueil']; ?>
"<?php if ($this->_tpl_vars['page'] == 'accueil'): ?> class="hightlight"<?php endif; ?>>Accueil</a>
<a href="<?php echo $this->_tpl_vars['menu']['batiments']; ?>
"<?php if ($this->_tpl_vars['page'] == 'batiments'): ?> class="hightlight"<?php endif; ?>>B&acirc;timents</a>
<a href="<?php echo $this->_tpl_vars['menu']['caserne']; ?>
"<?php if ($this->_tpl_vars['page'] == 'caserne'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['9'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<a href="<?php echo $this->_tpl_vars['menu']['chantierspatial']; ?>
"<?php if ($this->_tpl_vars['page'] == 'chantierspatial'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['8'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<a href="<?php echo $this->_tpl_vars['menu']['chantierterrestre']; ?>
"<?php if ($this->_tpl_vars['page'] == 'chantierterrestre'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['7'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a>
<a href="<?php echo $this->_tpl_vars['menu']['defenses']; ?>
"<?php if ($this->_tpl_vars['page'] == 'defenses'): ?> class="hightlight"<?php endif; ?>>Défenses</a>
<?php if ($this->_tpl_vars['planetes']['0']['id'] == $this->_tpl_vars['planete']->id): ?><a href="<?php echo $this->_tpl_vars['menu']['laboratoire']; ?>
"<?php if ($this->_tpl_vars['page'] == 'laboratoire'): ?> class="hightlight"<?php endif; ?>><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['batiments']['noms_sing']['6'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</a><?php endif; ?>
<a href="<?php echo $this->_tpl_vars['menu']['arbre']; ?>
"<?php if ($this->_tpl_vars['page'] == 'arbre' || $this->_tpl_vars['page'] == 'description'): ?> class="hightlight"<?php endif; ?>>Arbre technologique</a>
<div class="space"></div>
<a href="<?php echo $this->_tpl_vars['menu']['ressources']; ?>
"<?php if ($this->_tpl_vars['page'] == 'ressources'): ?> class="hightlight"<?php endif; ?>>Ressources</a>
<a href="<?php echo $this->_tpl_vars['menu']['gestion']; ?>
"<?php if ($this->_tpl_vars['page'] == 'gestion' || $this->_tpl_vars['page'] == 'rename'): ?> class="hightlight"<?php endif; ?>>Gestion</a>
<a href="<?php echo $this->_tpl_vars['menu']['marche']; ?>
"<?php if ($this->_tpl_vars['page'] == 'marche' || $this->_tpl_vars['page'] == 'bourse_ressources' || $this->_tpl_vars['page'] == 'bourseDetails'): ?> class="hightlight"<?php endif; ?>>March&eacute;</a>
<a href="<?php echo $this->_tpl_vars['menu']['flotte']; ?>
"<?php if ($this->_tpl_vars['page'] == 'flotte' || $this->_tpl_vars['page'] == 'flotte1' || $this->_tpl_vars['page'] == 'flotte2' || $this->_tpl_vars['page'] == 'flotten'): ?> class="hightlight"<?php endif; ?>>Flottes</a>
<!--<a href="?p=simulateur"<?php if ($this->_tpl_vars['page'] == 'simulateur_combat'): ?> class="hightlight"<?php endif; ?>>Simulateur de combat</a>-->
<a href="<?php echo $this->_tpl_vars['menu']['carte']; ?>
"<?php if ($this->_tpl_vars['page'] == 'carte'): ?> class="hightlight"<?php endif; ?>>Carte spatiale</a>
<a href="<?php echo $this->_tpl_vars['menu']['options']; ?>
"<?php if ($this->_tpl_vars['page'] == 'options'): ?> class="hightlight"<?php endif; ?>>Options</a>
<div class="space"></div>
<a href="<?php echo $this->_tpl_vars['menu']['messages']; ?>
"<?php if ($this->_tpl_vars['page'] == 'messagerie' || $this->_tpl_vars['page'] == 'envoyer'): ?> class="hightlight"<?php endif; ?>><?php if ($this->_tpl_vars['alertMail']): ?><b>Messages et rapports (<?php echo $this->_tpl_vars['alertMail']; ?>
)</b><?php else: ?>Messages et rapports<?php endif; ?></a>
<a href="<?php echo $this->_tpl_vars['menu']['alliance']; ?>
"<?php if ($this->_tpl_vars['titre'] == 'Alliance'): ?> class="hightlight"<?php endif; ?>>Alliance</a>
<a href="<?php echo $this->_tpl_vars['menu']['classement']; ?>
"<?php if ($this->_tpl_vars['page'] == 'classement'): ?> class="hightlight"<?php endif; ?>>Classement</a>
<a href="<?php echo $this->_tpl_vars['menu']['chat']; ?>
"<?php if ($this->_tpl_vars['page'] == 'chat'): ?> class="hightlight"<?php endif; ?> onclick="window.open(this.href);return false;">Chat</a>
<a href="<?php echo $this->_tpl_vars['menu']['forums']; ?>
"<?php if ($this->_tpl_vars['page'] == 'forums'): ?> class="hightlight"<?php endif; ?>>Forums</a>
<a href="<?php echo $this->_tpl_vars['menu']['bugs']; ?>
"<?php if ($this->_tpl_vars['page'] == 'bugs'): ?> class="hightlight"<?php endif; ?>>Rapports de bug</a>
<a href="<?php echo $this->_tpl_vars['menu']['faq']; ?>
"<?php if ($this->_tpl_vars['page'] == 'faq'): ?> class="hightlight"<?php endif; ?>>F.A.Q.</a>
<a href="<?php echo $this->_tpl_vars['menu']['deconnexion']; ?>
">Déconnexion</a>
<div class="space"></div>
<?php endif; ?> <div class="menu_bt"></div></div>
<?php if ($this->_tpl_vars['page'] != 'admin' && $this->_tpl_vars['page'] != 'vide' && $this->_tpl_vars['page'] != 'amis' && $this->_tpl_vars['page'] != 'flotten' && $this->_tpl_vars['page'] != 'messagerie' && $this->_tpl_vars['page'] != 'envoyer' && $this->_tpl_vars['page'] != 'bugs' && $this->_tpl_vars['page'] != 'carte' && $this->_tpl_vars['page'] != 'classement' && $this->_tpl_vars['page'] != 'options' && $this->_tpl_vars['page'] != 'simulation' && $this->_tpl_vars['page'] != 'vp' && $this->_tpl_vars['page'] != 'operateur' && $this->_tpl_vars['titre'] != 'Alliance'): ?>
<div id="corps_top">
<div class="border_top"></div>
<a href="?p=rename"><img src="<?php echo $this->_tpl_vars['url_images']; ?>
images/<?php if (SURFACE == 'planete'): ?>planetes<?php else: ?>asteroides<?php endif; ?>/<?php echo $this->_tpl_vars['planete']->image; ?>
.jpg" width="70" height="70" alt="<?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->nom_planete)) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
" /></a>
<div>Bonjour, <span><?php echo $this->_tpl_vars['planete']->pseudo; ?>
.</span><br />Votre position actuelle:<br /><br /><form action="<?php echo $this->_tpl_vars['link']['changeplanete']; ?>
" method="post"><fieldset><select onchange="this.form.submit();" name="Cplanete"><optgroup label="Plan&egrave;tes"><?php $_from = $this->_tpl_vars['planetes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['plan']):
?><option <?php if ($this->_tpl_vars['plan']['id'] == $this->_tpl_vars['planete']->id): ?>selected="selected" <?php endif; ?>value="<?php echo $this->_tpl_vars['plan']['id']; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['plan']['nom_planete'])) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['plan']['galaxie']; ?>
:<?php echo $this->_tpl_vars['plan']['ss']; ?>
:<?php echo $this->_tpl_vars['plan']['position']; ?>
]</option><?php endforeach; endif; unset($_from); ?></optgroup><?php if ($this->_tpl_vars['planete']->alliance): ?><optgroup label="Astéroïdes"><option value="A<?php echo $this->_tpl_vars['planete']->id_alliance; ?>
"><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->alliance->nom_asteroide)) ? $this->_run_mod_handler('escape', true, $_tmp) : smarty_modifier_escape($_tmp)); ?>
[<?php echo $this->_tpl_vars['planete']->alliance->galaxie; ?>
:<?php echo $this->_tpl_vars['planete']->alliance->ss; ?>
:A]</option></optgroup><?php endif; ?></select><noscript><div><br /><input class="submit" type="submit" value="GO" /></div></noscript></fieldset></form></div>
<div class="ressource"><span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['energie'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</span><br /><?php if ($this->_tpl_vars['planete']->energieConso >= $this->_tpl_vars['planete']->energie): ?><span class="lack"><?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->energieConso)) ? $this->_run_mod_handler('separenombre', true, $_tmp) : smarty_modifier_separenombre($_tmp)); ?>
/<?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->energie)) ? $this->_run_mod_handler('separenombre', true, $_tmp) : smarty_modifier_separenombre($_tmp)); ?>
<?php if ($this->_tpl_vars['planete']->alert_ressources['4']): ?></span><?php endif; ?></div>
<div class="ressource"><span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['hydrogene'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</span><br /><?php if ($this->_tpl_vars['planete']->alert_ressources['2'] == true): ?><span class="lack"><?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->hydrogene)) ? $this->_run_mod_handler('separenombre', true, $_tmp) : smarty_modifier_separenombre($_tmp)); ?>
<?php if ($this->_tpl_vars['planete']->alert_ressources['2']): ?></span><?php endif; ?></div>
<div class="ressource"><span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['cristal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</span><br /><?php if ($this->_tpl_vars['planete']->alert_ressources['1'] == true): ?><span class="lack"><?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->cristal)) ? $this->_run_mod_handler('separenombre', true, $_tmp) : smarty_modifier_separenombre($_tmp)); ?>
<?php if ($this->_tpl_vars['planete']->alert_ressources['1']): ?></span><?php endif; ?></div>
<div class="ressource"><span><?php echo ((is_array($_tmp=$this->_tpl_vars['LANG'][$this->_tpl_vars['race']]['ressources']['noms']['metal'])) ? $this->_run_mod_handler('ucfirst', true, $_tmp) : smarty_modifier_ucfirst($_tmp)); ?>
</span><br /><?php if ($this->_tpl_vars['planete']->alert_ressources['0'] == true): ?><span class="lack"><?php endif; ?><?php echo ((is_array($_tmp=$this->_tpl_vars['planete']->metal)) ? $this->_run_mod_handler('separenombre', true, $_tmp) : smarty_modifier_separenombre($_tmp)); ?>
<?php if ($this->_tpl_vars['planete']->alert_ressources['0']): ?></span><?php endif; ?></div>
<div class="border_bt"></div>
</div>
<?php endif; ?>
<?php if ($this->_tpl_vars['page'] != 'admin' && $this->_tpl_vars['page'] != 'operateur'): ?><div id="pub"><?php echo $this->_tpl_vars['pub']; ?>
</div><?php endif; ?>
<div id="corps">
<div class="border_top"></div>

View file

@ -0,0 +1,17 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 22:26:02
compiled from game/vide.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2><?php if ($this->_tpl_vars['titreP']): ?><?php echo $this->_tpl_vars['titreP']; ?>
<?php else: ?><?php echo $this->_tpl_vars['titre']; ?>
<?php endif; ?></h2>
<?php echo $this->_tpl_vars['contenu']; ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,60 @@
<?php /* Smarty version 2.6.22, created on 2009-03-07 17:54:02
compiled from game/messagerie.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'nl2br', 'game/messagerie.tpl', 8, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Messages</h2>
<?php echo $this->_tpl_vars['avertissement']; ?>
<h3><a href="<?php echo $this->_tpl_vars['menu']['envoie']; ?>
">Ecrire un message</a></h3>
<form action="<?php echo $this->_tpl_vars['menu']['messagerie']; ?>
" method="post">
<?php $_from = $this->_tpl_vars['messages']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['message']):
?>
<dl>
<dt><input class="button2" type="button" onclick="hide(this); return false;" /><input class="checkbox" type="checkbox" name="m<?php echo $this->_tpl_vars['message']['4']; ?>
" value="<?php echo $this->_tpl_vars['message']['5']; ?>
" /><a href="?p=envoyer&amp;d=<?php echo $this->_tpl_vars['message']['2']; ?>
&amp;o=Re:%20<?php echo $this->_tpl_vars['message']['0']; ?>
"><?php echo $this->_tpl_vars['message']['0']; ?>
</a> de <?php echo $this->_tpl_vars['message']['2']; ?>
à <?php echo $this->_tpl_vars['message']['1']; ?>
</dt><dd><?php echo ((is_array($_tmp=$this->_tpl_vars['message']['3'])) ? $this->_run_mod_handler('nl2br', true, $_tmp) : smarty_modifier_nl2br($_tmp)); ?>
<div style="text-align: right;"><a href="?p=envoyer&amp;d=<?php echo $this->_tpl_vars['message']['2']; ?>
&amp;o=Re:%20<?php echo $this->_tpl_vars['message']['0']; ?>
"><i>Répondre</i></a> | <a href="?p=messagerie&amp;avertir=<?php echo $this->_tpl_vars['message']['5']; ?>
"><i>Avertir un opérateur</i></a></div></dd>
</dl>
<?php endforeach; endif; unset($_from); ?>
<fieldset><input class="button" type="button" value="Tout sélectionner" onclick="checkboxes(true)" /> <input class="button" type="button" value="Tout déselectionner" onclick="checkboxes(false)" /><br /><br /><strong>Supprimer la sélection : </strong><input class="submit" type="submit" value="OK" /><br /><br /><input type="hidden" value="<?php echo $this->_tpl_vars['IM']; ?>
" name="IM" /></fieldset>
</form>
<h2>Rapports</h2>
<form action="<?php echo $this->_tpl_vars['menu']['messagerie']; ?>
" method="post">
<?php $_from = $this->_tpl_vars['rapports']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['rapport']):
?>
<dl>
<dt><input class="button2" type="button" onclick="hide(this); return false;" /><input class="checkbox" type="checkbox" name="r<?php echo $this->_tpl_vars['rapport']['4']; ?>
" value="<?php echo $this->_tpl_vars['rapport']['5']; ?>
" /><?php echo $this->_tpl_vars['rapport']['0']; ?>
à <?php echo $this->_tpl_vars['rapport']['1']; ?>
</dt><dd><?php echo $this->_tpl_vars['rapport']['3']; ?>
</dd>
</dl>
<?php endforeach; endif; unset($_from); ?>
<fieldset><input class="button" type="button" value="Tout sélectionner" onclick="checkboxesr(true)" /> <input class="button" type="button" value="Tout déselectionner" onclick="checkboxesr(false)" /><br /><br /><strong>Supprimer la sélection : </strong><input class="submit" type="submit" value="OK" /><br /><br /><input type="hidden" value="<?php echo $this->_tpl_vars['IR']; ?>
" name="IR" /></fieldset>
</form>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,46 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:50:48
compiled from admin/inscription.tpl */ ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<div class="corpsi">
<form action="" method="post">
<p><label for="pseudo">Pseudo :</label> <input class="text" name="HB_pseudo" id="pseudo" type="text" maxlength="16" value="<?php echo $_POST['HB_pseudo']; ?>
" />
<br /><label for="mdp">Mot de passe :</label> <input class="text" name="HB_mdp" id="mdp" type="password" maxlength="32" />
<br /><label for="conf">Confirmation :</label> <input class="text" name="HB_conf" id="conf" type="password" maxlength="32" />
<br /><label for="mail">Adresse &eacute;lectronique :</label> <input class="text" name="HB_mail" id="mail" type="text" value="<?php echo $_POST['HB_mail']; ?>
" maxlength="64" />
<br /><br />Race :<br />
</p>
<table style="margin-left: auto; margin-right: auto; width: 75%;">
<tr>
<td>
<label id="humain" for="humaini">
<img src="images/humain.jpg" alt="Humain"/><br />
<input type="radio" name="race" id="humaini" value="humain"<?php if ($_POST['race'] == 'humain'): ?> selected="selected"<?php endif; ?> /> Humain
</label>
</td>
<td>
<label id="covenant" for="covenanti">
<img src="images/covenant.jpg" alt="Covenant"/><br />
<input type="radio" name="race" id="covenanti" value="covenant"<?php if ($_POST['race'] == 'covenant'): ?> selected="selected"<?php endif; ?> /> Covenant
</label>
</td>
</tr>
</table>
<p>
<br /><label for="servers">Galaxie :</label> <select name="servers" id="servers"><option value="1"> Alpha</option></select>
<br /><label for="placement">Placement pr&eacute;f&eacute;rentiel :</label> <input class="text" name="HB_placement" id="placement" type="text" value="<?php echo $_POST['HB_placement']; ?>
" />
<br /><br /><input class="submit" value="OK" type="submit" />
</p>
</form>
</div>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,25 @@
<?php /* Smarty version 2.6.22, created on 2009-03-01 20:34:41
compiled from game/version.tpl */ ?>
<?php require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
smarty_core_load_plugins(array('plugins' => array(array('modifier', 'nl2br', 'game/version.tpl', 5, false),)), $this); ?>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/header.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>
<h2>Historique des mises à jour</h2>
<table><thead><tr><th>Versions</th><th>Détails</th></tr></thead><tbody>
<?php $_from = $this->_tpl_vars['versions']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)):
foreach ($_from as $this->_tpl_vars['version']):
?>
<tr><td><strong><?php echo $this->_tpl_vars['version']['numero']; ?>
</strong><br /><?php echo $this->_tpl_vars['version']['date']; ?>
</td><td><?php echo ((is_array($_tmp=$this->_tpl_vars['version']['description'])) ? $this->_run_mod_handler('nl2br', true, $_tmp) : smarty_modifier_nl2br($_tmp)); ?>
</td></tr>
<?php endforeach; endif; unset($_from); ?>
</tbody></table>
<?php $_smarty_tpl_vars = $this->_tpl_vars;
$this->_smarty_include(array('smarty_include_tpl_file' => 'game/footer.tpl', 'smarty_include_vars' => array()));
$this->_tpl_vars = $_smarty_tpl_vars;
unset($_smarty_tpl_vars);
?>

View file

@ -0,0 +1,25 @@
<?php
if(!defined('ONYX')) exit;
define('SMARTY_DIR',ONYX.'modules/templates/smarty/');
require_once(SMARTY_DIR."Smarty.class.php");
define('_TEMPLATE_DIR',ONYX.'tpl/'.$OPT['tpl'].'/');
define('_TEMPLATE_COMPILE',ONYX.$OPT['compile']);
define('_TEMPLATE_CONFIG',ONYX.$OPT['config']);
define('_TEMPLATE_CACHE',ONYX.$OPT['cache']);
class Template extends Smarty
{
var $template_dir = _TEMPLATE_DIR;
var $compile_dir = _TEMPLATE_COMPILE;
var $config_dir = _TEMPLATE_CONFIG;
var $cache_dir = _TEMPLATE_CACHE;
var $compile_check = false;
var $force_compile = true;
}
?>

View file

@ -0,0 +1,393 @@
<?php
/**
* Config_File class.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* For questions, help, comments, discussion, etc., please join the
* Smarty mailing list. Send a blank e-mail to
* smarty-discussion-subscribe@googlegroups.com
*
* @link http://www.smarty.net/
* @version 2.6.22
* @copyright Copyright: 2001-2005 New Digital Group, Inc.
* @author Andrei Zmievski <andrei@php.net>
* @access public
* @package Smarty
*/
/* $Id: Config_File.class.php 2786 2008-09-18 21:04:38Z Uwe.Tews $ */
/**
* Config file reading class
* @package Smarty
*/
class Config_File {
/**#@+
* Options
* @var boolean
*/
/**
* Controls whether variables with the same name overwrite each other.
*/
var $overwrite = true;
/**
* Controls whether config values of on/true/yes and off/false/no get
* converted to boolean values automatically.
*/
var $booleanize = true;
/**
* Controls whether hidden config sections/vars are read from the file.
*/
var $read_hidden = true;
/**
* Controls whether or not to fix mac or dos formatted newlines.
* If set to true, \r or \r\n will be changed to \n.
*/
var $fix_newlines = true;
/**#@-*/
/** @access private */
var $_config_path = "";
var $_config_data = array();
/**#@-*/
/**
* Constructs a new config file class.
*
* @param string $config_path (optional) path to the config files
*/
function Config_File($config_path = NULL)
{
if (isset($config_path))
$this->set_path($config_path);
}
/**
* Set the path where configuration files can be found.
*
* @param string $config_path path to the config files
*/
function set_path($config_path)
{
if (!empty($config_path)) {
if (!is_string($config_path) || !file_exists($config_path) || !is_dir($config_path)) {
$this->_trigger_error_msg("Bad config file path '$config_path'");
return;
}
if(substr($config_path, -1) != DIRECTORY_SEPARATOR) {
$config_path .= DIRECTORY_SEPARATOR;
}
$this->_config_path = $config_path;
}
}
/**
* Retrieves config info based on the file, section, and variable name.
*
* @param string $file_name config file to get info for
* @param string $section_name (optional) section to get info for
* @param string $var_name (optional) variable to get info for
* @return string|array a value or array of values
*/
function get($file_name, $section_name = NULL, $var_name = NULL)
{
if (empty($file_name)) {
$this->_trigger_error_msg('Empty config file name');
return;
} else {
$file_name = $this->_config_path . $file_name;
if (!isset($this->_config_data[$file_name]))
$this->load_file($file_name, false);
}
if (!empty($var_name)) {
if (empty($section_name)) {
return $this->_config_data[$file_name]["vars"][$var_name];
} else {
if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name]))
return $this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name];
else
return array();
}
} else {
if (empty($section_name)) {
return (array)$this->_config_data[$file_name]["vars"];
} else {
if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"]))
return (array)$this->_config_data[$file_name]["sections"][$section_name]["vars"];
else
return array();
}
}
}
/**
* Retrieves config info based on the key.
*
* @param $file_name string config key (filename/section/var)
* @return string|array same as get()
* @uses get() retrieves information from config file and returns it
*/
function &get_key($config_key)
{
list($file_name, $section_name, $var_name) = explode('/', $config_key, 3);
$result = &$this->get($file_name, $section_name, $var_name);
return $result;
}
/**
* Get all loaded config file names.
*
* @return array an array of loaded config file names
*/
function get_file_names()
{
return array_keys($this->_config_data);
}
/**
* Get all section names from a loaded file.
*
* @param string $file_name config file to get section names from
* @return array an array of section names from the specified file
*/
function get_section_names($file_name)
{
$file_name = $this->_config_path . $file_name;
if (!isset($this->_config_data[$file_name])) {
$this->_trigger_error_msg("Unknown config file '$file_name'");
return;
}
return array_keys($this->_config_data[$file_name]["sections"]);
}
/**
* Get all global or section variable names.
*
* @param string $file_name config file to get info for
* @param string $section_name (optional) section to get info for
* @return array an array of variables names from the specified file/section
*/
function get_var_names($file_name, $section = NULL)
{
if (empty($file_name)) {
$this->_trigger_error_msg('Empty config file name');
return;
} else if (!isset($this->_config_data[$file_name])) {
$this->_trigger_error_msg("Unknown config file '$file_name'");
return;
}
if (empty($section))
return array_keys($this->_config_data[$file_name]["vars"]);
else
return array_keys($this->_config_data[$file_name]["sections"][$section]["vars"]);
}
/**
* Clear loaded config data for a certain file or all files.
*
* @param string $file_name file to clear config data for
*/
function clear($file_name = NULL)
{
if ($file_name === NULL)
$this->_config_data = array();
else if (isset($this->_config_data[$file_name]))
$this->_config_data[$file_name] = array();
}
/**
* Load a configuration file manually.
*
* @param string $file_name file name to load
* @param boolean $prepend_path whether current config path should be
* prepended to the filename
*/
function load_file($file_name, $prepend_path = true)
{
if ($prepend_path && $this->_config_path != "")
$config_file = $this->_config_path . $file_name;
else
$config_file = $file_name;
ini_set('track_errors', true);
$fp = @fopen($config_file, "r");
if (!is_resource($fp)) {
$this->_trigger_error_msg("Could not open config file '$config_file'");
return false;
}
$contents = ($size = filesize($config_file)) ? fread($fp, $size) : '';
fclose($fp);
$this->_config_data[$config_file] = $this->parse_contents($contents);
return true;
}
/**
* Store the contents of a file manually.
*
* @param string $config_file file name of the related contents
* @param string $contents the file-contents to parse
*/
function set_file_contents($config_file, $contents)
{
$this->_config_data[$config_file] = $this->parse_contents($contents);
return true;
}
/**
* parse the source of a configuration file manually.
*
* @param string $contents the file-contents to parse
*/
function parse_contents($contents)
{
if($this->fix_newlines) {
// fix mac/dos formatted newlines
$contents = preg_replace('!\r\n?!', "\n", $contents);
}
$config_data = array();
$config_data['sections'] = array();
$config_data['vars'] = array();
/* reference to fill with data */
$vars =& $config_data['vars'];
/* parse file line by line */
preg_match_all('!^.*\r?\n?!m', $contents, $match);
$lines = $match[0];
for ($i=0, $count=count($lines); $i<$count; $i++) {
$line = $lines[$i];
if (empty($line)) continue;
if ( substr($line, 0, 1) == '[' && preg_match('!^\[(.*?)\]!', $line, $match) ) {
/* section found */
if (substr($match[1], 0, 1) == '.') {
/* hidden section */
if ($this->read_hidden) {
$section_name = substr($match[1], 1);
} else {
/* break reference to $vars to ignore hidden section */
unset($vars);
$vars = array();
continue;
}
} else {
$section_name = $match[1];
}
if (!isset($config_data['sections'][$section_name]))
$config_data['sections'][$section_name] = array('vars' => array());
$vars =& $config_data['sections'][$section_name]['vars'];
continue;
}
if (preg_match('/^\s*(\.?\w+)\s*=\s*(.*)/s', $line, $match)) {
/* variable found */
$var_name = rtrim($match[1]);
if (strpos($match[2], '"""') === 0) {
/* handle multiline-value */
$lines[$i] = substr($match[2], 3);
$var_value = '';
while ($i<$count) {
if (($pos = strpos($lines[$i], '"""')) === false) {
$var_value .= $lines[$i++];
} else {
/* end of multiline-value */
$var_value .= substr($lines[$i], 0, $pos);
break;
}
}
$booleanize = false;
} else {
/* handle simple value */
$var_value = preg_replace('/^([\'"])(.*)\1$/', '\2', rtrim($match[2]));
$booleanize = $this->booleanize;
}
$this->_set_config_var($vars, $var_name, $var_value, $booleanize);
}
/* else unparsable line / means it is a comment / means ignore it */
}
return $config_data;
}
/**#@+ @access private */
/**
* @param array &$container
* @param string $var_name
* @param mixed $var_value
* @param boolean $booleanize determines whether $var_value is converted to
* to true/false
*/
function _set_config_var(&$container, $var_name, $var_value, $booleanize)
{
if (substr($var_name, 0, 1) == '.') {
if (!$this->read_hidden)
return;
else
$var_name = substr($var_name, 1);
}
if (!preg_match("/^[a-zA-Z_]\w*$/", $var_name)) {
$this->_trigger_error_msg("Bad variable name '$var_name'");
return;
}
if ($booleanize) {
if (preg_match("/^(on|true|yes)$/i", $var_value))
$var_value = true;
else if (preg_match("/^(off|false|no)$/i", $var_value))
$var_value = false;
}
if (!isset($container[$var_name]) || $this->overwrite)
$container[$var_name] = $var_value;
else {
settype($container[$var_name], 'array');
$container[$var_name][] = $var_value;
}
}
/**
* @uses trigger_error() creates a PHP warning/error
* @param string $error_msg
* @param integer $error_type one of
*/
function _trigger_error_msg($error_msg, $error_type = E_USER_WARNING)
{
trigger_error("Config_File error: $error_msg", $error_type);
}
/**#@-*/
}
?>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,157 @@
{* Smarty *}
{* debug.tpl, last updated version 2.1.0 *}
{assign_debug_info}
{capture assign=debug_output}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Smarty Debug Console</title>
{literal}
<style type="text/css">
/* <![CDATA[ */
body, h1, h2, td, th, p {
font-family: sans-serif;
font-weight: normal;
font-size: 0.9em;
margin: 1px;
padding: 0;
}
h1 {
margin: 0;
text-align: left;
padding: 2px;
background-color: #f0c040;
color: black;
font-weight: bold;
font-size: 1.2em;
}
h2 {
background-color: #9B410E;
color: white;
text-align: left;
font-weight: bold;
padding: 2px;
border-top: 1px solid black;
}
body {
background: black;
}
p, table, div {
background: #f0ead8;
}
p {
margin: 0;
font-style: italic;
text-align: center;
}
table {
width: 100%;
}
th, td {
font-family: monospace;
vertical-align: top;
text-align: left;
width: 50%;
}
td {
color: green;
}
.odd {
background-color: #eeeeee;
}
.even {
background-color: #fafafa;
}
.exectime {
font-size: 0.8em;
font-style: italic;
}
#table_assigned_vars th {
color: blue;
}
#table_config_vars th {
color: maroon;
}
/* ]]> */
</style>
{/literal}
</head>
<body>
<h1>Smarty Debug Console</h1>
<h2>included templates &amp; config files (load time in seconds)</h2>
<div>
{section name=templates loop=$_debug_tpls}
{section name=indent loop=$_debug_tpls[templates].depth}&nbsp;&nbsp;&nbsp;{/section}
<font color={if $_debug_tpls[templates].type eq "template"}brown{elseif $_debug_tpls[templates].type eq "insert"}black{else}green{/if}>
{$_debug_tpls[templates].filename|escape:html}</font>
{if isset($_debug_tpls[templates].exec_time)}
<span class="exectime">
({$_debug_tpls[templates].exec_time|string_format:"%.5f"})
{if %templates.index% eq 0}(total){/if}
</span>
{/if}
<br />
{sectionelse}
<p>no templates included</p>
{/section}
</div>
<h2>assigned template variables</h2>
<table id="table_assigned_vars">
{section name=vars loop=$_debug_keys}
<tr class="{cycle values="odd,even"}">
<th>{ldelim}${$_debug_keys[vars]|escape:'html'}{rdelim}</th>
<td>{$_debug_vals[vars]|@debug_print_var}</td></tr>
{sectionelse}
<tr><td><p>no template variables assigned</p></td></tr>
{/section}
</table>
<h2>assigned config file variables (outer template scope)</h2>
<table id="table_config_vars">
{section name=config_vars loop=$_debug_config_keys}
<tr class="{cycle values="odd,even"}">
<th>{ldelim}#{$_debug_config_keys[config_vars]|escape:'html'}#{rdelim}</th>
<td>{$_debug_config_vals[config_vars]|@debug_print_var}</td></tr>
{sectionelse}
<tr><td><p>no config vars assigned</p></td></tr>
{/section}
</table>
</body>
</html>
{/capture}
{if isset($_smarty_debug_output) and $_smarty_debug_output eq "html"}
{$debug_output}
{else}
<script type="text/javascript">
// <![CDATA[
if ( self.name == '' ) {ldelim}
var title = 'Console';
{rdelim}
else {ldelim}
var title = 'Console_' + self.name;
{rdelim}
_smarty_console = window.open("",title.value,"width=680,height=600,resizable,scrollbars=yes");
_smarty_console.document.write('{$debug_output|escape:'javascript'}');
_smarty_console.document.close();
// ]]>
</script>
{/if}

View file

@ -0,0 +1,67 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* assemble filepath of requested plugin
*
* @param string $type
* @param string $name
* @return string|false
*/
function smarty_core_assemble_plugin_filepath($params, &$smarty)
{
static $_filepaths_cache = array();
$_plugin_filename = $params['type'] . '.' . $params['name'] . '.php';
if (isset($_filepaths_cache[$_plugin_filename])) {
return $_filepaths_cache[$_plugin_filename];
}
$_return = false;
foreach ((array)$smarty->plugins_dir as $_plugin_dir) {
$_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename;
// see if path is relative
if (!preg_match("/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/", $_plugin_dir)) {
$_relative_paths[] = $_plugin_dir;
// relative path, see if it is in the SMARTY_DIR
if (@is_readable(SMARTY_DIR . $_plugin_filepath)) {
$_return = SMARTY_DIR . $_plugin_filepath;
break;
}
}
// try relative to cwd (or absolute)
if (@is_readable($_plugin_filepath)) {
$_return = $_plugin_filepath;
break;
}
}
if($_return === false) {
// still not found, try PHP include_path
if(isset($_relative_paths)) {
foreach ((array)$_relative_paths as $_plugin_dir) {
$_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename;
$_params = array('file_path' => $_plugin_filepath);
require_once(SMARTY_CORE_DIR . 'core.get_include_path.php');
if(smarty_core_get_include_path($_params, $smarty)) {
$_return = $_params['new_file_path'];
break;
}
}
}
}
$_filepaths_cache[$_plugin_filename] = $_return;
return $_return;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,43 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty assign_smarty_interface core plugin
*
* Type: core<br>
* Name: assign_smarty_interface<br>
* Purpose: assign the $smarty interface variable
* @param array Format: null
* @param Smarty
*/
function smarty_core_assign_smarty_interface($params, &$smarty)
{
if (isset($smarty->_smarty_vars) && isset($smarty->_smarty_vars['request'])) {
return;
}
$_globals_map = array('g' => 'HTTP_GET_VARS',
'p' => 'HTTP_POST_VARS',
'c' => 'HTTP_COOKIE_VARS',
's' => 'HTTP_SERVER_VARS',
'e' => 'HTTP_ENV_VARS');
$_smarty_vars_request = array();
foreach (preg_split('!!', strtolower($smarty->request_vars_order)) as $_c) {
if (isset($_globals_map[$_c])) {
$_smarty_vars_request = array_merge($_smarty_vars_request, $GLOBALS[$_globals_map[$_c]]);
}
}
$_smarty_vars_request = @array_merge($_smarty_vars_request, $GLOBALS['HTTP_SESSION_VARS']);
$smarty->_smarty_vars['request'] = $_smarty_vars_request;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,79 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* create full directory structure
*
* @param string $dir
*/
// $dir
function smarty_core_create_dir_structure($params, &$smarty)
{
if (!file_exists($params['dir'])) {
$_open_basedir_ini = ini_get('open_basedir');
if (DIRECTORY_SEPARATOR=='/') {
/* unix-style paths */
$_dir = $params['dir'];
$_dir_parts = preg_split('!/+!', $_dir, -1, PREG_SPLIT_NO_EMPTY);
$_new_dir = (substr($_dir, 0, 1)=='/') ? '/' : getcwd().'/';
if($_use_open_basedir = !empty($_open_basedir_ini)) {
$_open_basedirs = explode(':', $_open_basedir_ini);
}
} else {
/* other-style paths */
$_dir = str_replace('\\','/', $params['dir']);
$_dir_parts = preg_split('!/+!', $_dir, -1, PREG_SPLIT_NO_EMPTY);
if (preg_match('!^((//)|([a-zA-Z]:/))!', $_dir, $_root_dir)) {
/* leading "//" for network volume, or "[letter]:/" for full path */
$_new_dir = $_root_dir[1];
/* remove drive-letter from _dir_parts */
if (isset($_root_dir[3])) array_shift($_dir_parts);
} else {
$_new_dir = str_replace('\\', '/', getcwd()).'/';
}
if($_use_open_basedir = !empty($_open_basedir_ini)) {
$_open_basedirs = explode(';', str_replace('\\', '/', $_open_basedir_ini));
}
}
/* all paths use "/" only from here */
foreach ($_dir_parts as $_dir_part) {
$_new_dir .= $_dir_part;
if ($_use_open_basedir) {
// do not attempt to test or make directories outside of open_basedir
$_make_new_dir = false;
foreach ($_open_basedirs as $_open_basedir) {
if (substr($_new_dir, 0, strlen($_open_basedir)) == $_open_basedir) {
$_make_new_dir = true;
break;
}
}
} else {
$_make_new_dir = true;
}
if ($_make_new_dir && !file_exists($_new_dir) && !@mkdir($_new_dir, $smarty->_dir_perms) && !is_dir($_new_dir)) {
$smarty->trigger_error("problem creating directory '" . $_new_dir . "'");
return false;
}
$_new_dir .= '/';
}
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,61 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty debug_console function plugin
*
* Type: core<br>
* Name: display_debug_console<br>
* Purpose: display the javascript debug console window
* @param array Format: null
* @param Smarty
*/
function smarty_core_display_debug_console($params, &$smarty)
{
// we must force compile the debug template in case the environment
// changed between separate applications.
if(empty($smarty->debug_tpl)) {
// set path to debug template from SMARTY_DIR
$smarty->debug_tpl = SMARTY_DIR . 'debug.tpl';
if($smarty->security && is_file($smarty->debug_tpl)) {
$smarty->secure_dir[] = realpath($smarty->debug_tpl);
}
$smarty->debug_tpl = 'file:' . SMARTY_DIR . 'debug.tpl';
}
$_ldelim_orig = $smarty->left_delimiter;
$_rdelim_orig = $smarty->right_delimiter;
$smarty->left_delimiter = '{';
$smarty->right_delimiter = '}';
$_compile_id_orig = $smarty->_compile_id;
$smarty->_compile_id = null;
$_compile_path = $smarty->_get_compile_path($smarty->debug_tpl);
if ($smarty->_compile_resource($smarty->debug_tpl, $_compile_path))
{
ob_start();
$smarty->_include($_compile_path);
$_results = ob_get_contents();
ob_end_clean();
} else {
$_results = '';
}
$smarty->_compile_id = $_compile_id_orig;
$smarty->left_delimiter = $_ldelim_orig;
$smarty->right_delimiter = $_rdelim_orig;
return $_results;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,44 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Get path to file from include_path
*
* @param string $file_path
* @param string $new_file_path
* @return boolean
* @staticvar array|null
*/
// $file_path, &$new_file_path
function smarty_core_get_include_path(&$params, &$smarty)
{
static $_path_array = null;
if(!isset($_path_array)) {
$_ini_include_path = ini_get('include_path');
if(strstr($_ini_include_path,';')) {
// windows pathnames
$_path_array = explode(';',$_ini_include_path);
} else {
$_path_array = explode(':',$_ini_include_path);
}
}
foreach ($_path_array as $_include_path) {
if (@is_readable($_include_path . DIRECTORY_SEPARATOR . $params['file_path'])) {
$params['new_file_path'] = $_include_path . DIRECTORY_SEPARATOR . $params['file_path'];
return true;
}
}
return false;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,23 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Get seconds and microseconds
* @return double
*/
function smarty_core_get_microtime($params, &$smarty)
{
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = (double)($mtime[1]) + (double)($mtime[0]);
return ($mtime);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,80 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Retrieves PHP script resource
*
* sets $php_resource to the returned resource
* @param string $resource
* @param string $resource_type
* @param $php_resource
* @return boolean
*/
function smarty_core_get_php_resource(&$params, &$smarty)
{
$params['resource_base_path'] = $smarty->trusted_dir;
$smarty->_parse_resource_name($params, $smarty);
/*
* Find out if the resource exists.
*/
if ($params['resource_type'] == 'file') {
$_readable = false;
if(file_exists($params['resource_name']) && is_readable($params['resource_name'])) {
$_readable = true;
} else {
// test for file in include_path
$_params = array('file_path' => $params['resource_name']);
require_once(SMARTY_CORE_DIR . 'core.get_include_path.php');
if(smarty_core_get_include_path($_params, $smarty)) {
$_include_path = $_params['new_file_path'];
$_readable = true;
}
}
} else if ($params['resource_type'] != 'file') {
$_template_source = null;
$_readable = is_callable($smarty->_plugins['resource'][$params['resource_type']][0][0])
&& call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][0],
array($params['resource_name'], &$_template_source, &$smarty));
}
/*
* Set the error function, depending on which class calls us.
*/
if (method_exists($smarty, '_syntax_error')) {
$_error_funcc = '_syntax_error';
} else {
$_error_funcc = 'trigger_error';
}
if ($_readable) {
if ($smarty->security) {
require_once(SMARTY_CORE_DIR . 'core.is_trusted.php');
if (!smarty_core_is_trusted($params, $smarty)) {
$smarty->$_error_funcc('(secure mode) ' . $params['resource_type'] . ':' . $params['resource_name'] . ' is not trusted');
return false;
}
}
} else {
$smarty->$_error_funcc($params['resource_type'] . ':' . $params['resource_name'] . ' is not readable');
return false;
}
if ($params['resource_type'] == 'file') {
$params['php_resource'] = $params['resource_name'];
} else {
$params['php_resource'] = $_template_source;
}
return true;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,59 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* determines if a resource is secure or not.
*
* @param string $resource_type
* @param string $resource_name
* @return boolean
*/
// $resource_type, $resource_name
function smarty_core_is_secure($params, &$smarty)
{
if (!$smarty->security || $smarty->security_settings['INCLUDE_ANY']) {
return true;
}
if ($params['resource_type'] == 'file') {
$_rp = realpath($params['resource_name']);
if (isset($params['resource_base_path'])) {
foreach ((array)$params['resource_base_path'] as $curr_dir) {
if ( ($_cd = realpath($curr_dir)) !== false &&
strncmp($_rp, $_cd, strlen($_cd)) == 0 &&
substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR ) {
return true;
}
}
}
if (!empty($smarty->secure_dir)) {
foreach ((array)$smarty->secure_dir as $curr_dir) {
if ( ($_cd = realpath($curr_dir)) !== false) {
if($_cd == $_rp) {
return true;
} elseif (strncmp($_rp, $_cd, strlen($_cd)) == 0 &&
substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR) {
return true;
}
}
}
}
} else {
// resource is not on local file system
return call_user_func_array(
$smarty->_plugins['resource'][$params['resource_type']][0][2],
array($params['resource_name'], &$smarty));
}
return false;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,47 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* determines if a resource is trusted or not
*
* @param string $resource_type
* @param string $resource_name
* @return boolean
*/
// $resource_type, $resource_name
function smarty_core_is_trusted($params, &$smarty)
{
$_smarty_trusted = false;
if ($params['resource_type'] == 'file') {
if (!empty($smarty->trusted_dir)) {
$_rp = realpath($params['resource_name']);
foreach ((array)$smarty->trusted_dir as $curr_dir) {
if (!empty($curr_dir) && is_readable ($curr_dir)) {
$_cd = realpath($curr_dir);
if (strncmp($_rp, $_cd, strlen($_cd)) == 0
&& substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR ) {
$_smarty_trusted = true;
break;
}
}
}
}
} else {
// resource is not on local file system
$_smarty_trusted = call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][3],
array($params['resource_name'], $smarty));
}
return $_smarty_trusted;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,125 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Load requested plugins
*
* @param array $plugins
*/
// $plugins
function smarty_core_load_plugins($params, &$smarty)
{
foreach ($params['plugins'] as $_plugin_info) {
list($_type, $_name, $_tpl_file, $_tpl_line, $_delayed_loading) = $_plugin_info;
$_plugin = &$smarty->_plugins[$_type][$_name];
/*
* We do not load plugin more than once for each instance of Smarty.
* The following code checks for that. The plugin can also be
* registered dynamically at runtime, in which case template file
* and line number will be unknown, so we fill them in.
*
* The final element of the info array is a flag that indicates
* whether the dynamically registered plugin function has been
* checked for existence yet or not.
*/
if (isset($_plugin)) {
if (empty($_plugin[3])) {
if (!is_callable($_plugin[0])) {
$smarty->_trigger_fatal_error("[plugin] $_type '$_name' is not implemented", $_tpl_file, $_tpl_line, __FILE__, __LINE__);
} else {
$_plugin[1] = $_tpl_file;
$_plugin[2] = $_tpl_line;
$_plugin[3] = true;
if (!isset($_plugin[4])) $_plugin[4] = true; /* cacheable */
}
}
continue;
} else if ($_type == 'insert') {
/*
* For backwards compatibility, we check for insert functions in
* the symbol table before trying to load them as a plugin.
*/
$_plugin_func = 'insert_' . $_name;
if (function_exists($_plugin_func)) {
$_plugin = array($_plugin_func, $_tpl_file, $_tpl_line, true, false);
continue;
}
}
$_plugin_file = $smarty->_get_plugin_filepath($_type, $_name);
if (! $_found = ($_plugin_file != false)) {
$_message = "could not load plugin file '$_type.$_name.php'\n";
}
/*
* If plugin file is found, it -must- provide the properly named
* plugin function. In case it doesn't, simply output the error and
* do not fall back on any other method.
*/
if ($_found) {
include_once $_plugin_file;
$_plugin_func = 'smarty_' . $_type . '_' . $_name;
if (!function_exists($_plugin_func)) {
$smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", $_tpl_file, $_tpl_line, __FILE__, __LINE__);
continue;
}
}
/*
* In case of insert plugins, their code may be loaded later via
* 'script' attribute.
*/
else if ($_type == 'insert' && $_delayed_loading) {
$_plugin_func = 'smarty_' . $_type . '_' . $_name;
$_found = true;
}
/*
* Plugin specific processing and error checking.
*/
if (!$_found) {
if ($_type == 'modifier') {
/*
* In case modifier falls back on using PHP functions
* directly, we only allow those specified in the security
* context.
*/
if ($smarty->security && !in_array($_name, $smarty->security_settings['MODIFIER_FUNCS'])) {
$_message = "(secure mode) modifier '$_name' is not allowed";
} else {
if (!function_exists($_name)) {
$_message = "modifier '$_name' is not implemented";
} else {
$_plugin_func = $_name;
$_found = true;
}
}
} else if ($_type == 'function') {
/*
* This is a catch-all situation.
*/
$_message = "unknown tag - '$_name'";
}
}
if ($_found) {
$smarty->_plugins[$_type][$_name] = array($_plugin_func, $_tpl_file, $_tpl_line, true, true);
} else {
// output error
$smarty->_trigger_fatal_error('[plugin] ' . $_message, $_tpl_file, $_tpl_line, __FILE__, __LINE__);
}
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,74 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* load a resource plugin
*
* @param string $type
*/
// $type
function smarty_core_load_resource_plugin($params, &$smarty)
{
/*
* Resource plugins are not quite like the other ones, so they are
* handled differently. The first element of plugin info is the array of
* functions provided by the plugin, the second one indicates whether
* all of them exist or not.
*/
$_plugin = &$smarty->_plugins['resource'][$params['type']];
if (isset($_plugin)) {
if (!$_plugin[1] && count($_plugin[0])) {
$_plugin[1] = true;
foreach ($_plugin[0] as $_plugin_func) {
if (!is_callable($_plugin_func)) {
$_plugin[1] = false;
break;
}
}
}
if (!$_plugin[1]) {
$smarty->_trigger_fatal_error("[plugin] resource '" . $params['type'] . "' is not implemented", null, null, __FILE__, __LINE__);
}
return;
}
$_plugin_file = $smarty->_get_plugin_filepath('resource', $params['type']);
$_found = ($_plugin_file != false);
if ($_found) { /*
* If the plugin file is found, it -must- provide the properly named
* plugin functions.
*/
include_once($_plugin_file);
/*
* Locate functions that we require the plugin to provide.
*/
$_resource_ops = array('source', 'timestamp', 'secure', 'trusted');
$_resource_funcs = array();
foreach ($_resource_ops as $_op) {
$_plugin_func = 'smarty_resource_' . $params['type'] . '_' . $_op;
if (!function_exists($_plugin_func)) {
$smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", null, null, __FILE__, __LINE__);
return;
} else {
$_resource_funcs[] = $_plugin_func;
}
}
$smarty->_plugins['resource'][$params['type']] = array($_resource_funcs, true);
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,71 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Replace cached inserts with the actual results
*
* @param string $results
* @return string
*/
function smarty_core_process_cached_inserts($params, &$smarty)
{
preg_match_all('!'.$smarty->_smarty_md5.'{insert_cache (.*)}'.$smarty->_smarty_md5.'!Uis',
$params['results'], $match);
list($cached_inserts, $insert_args) = $match;
for ($i = 0, $for_max = count($cached_inserts); $i < $for_max; $i++) {
if ($smarty->debugging) {
$_params = array();
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
$debug_start_time = smarty_core_get_microtime($_params, $smarty);
}
$args = unserialize($insert_args[$i]);
$name = $args['name'];
if (isset($args['script'])) {
$_params = array('resource_name' => $smarty->_dequote($args['script']));
require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
if(!smarty_core_get_php_resource($_params, $smarty)) {
return false;
}
$resource_type = $_params['resource_type'];
$php_resource = $_params['php_resource'];
if ($resource_type == 'file') {
$smarty->_include($php_resource, true);
} else {
$smarty->_eval($php_resource);
}
}
$function_name = $smarty->_plugins['insert'][$name][0];
if (empty($args['assign'])) {
$replace = $function_name($args, $smarty);
} else {
$smarty->assign($args['assign'], $function_name($args, $smarty));
$replace = '';
}
$params['results'] = substr_replace($params['results'], $replace, strpos($params['results'], $cached_inserts[$i]), strlen($cached_inserts[$i]));
if ($smarty->debugging) {
$_params = array();
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
$smarty->_smarty_debug_info[] = array('type' => 'insert',
'filename' => 'insert_'.$name,
'depth' => $smarty->_inclusion_depth,
'exec_time' => smarty_core_get_microtime($_params, $smarty) - $debug_start_time);
}
}
return $params['results'];
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,37 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Replace nocache-tags by results of the corresponding non-cacheable
* functions and return it
*
* @param string $compiled_tpl
* @param string $cached_source
* @return string
*/
function smarty_core_process_compiled_include($params, &$smarty)
{
$_cache_including = $smarty->_cache_including;
$smarty->_cache_including = true;
$_return = $params['results'];
foreach ($smarty->_cache_info['cache_serials'] as $_include_file_path=>$_cache_serial) {
$smarty->_include($_include_file_path, true);
}
foreach ($smarty->_cache_info['cache_serials'] as $_include_file_path=>$_cache_serial) {
$_return = preg_replace_callback('!(\{nocache\:('.$_cache_serial.')#(\d+)\})!s',
array(&$smarty, '_process_compiled_include_callback'),
$_return);
}
$smarty->_cache_including = $_cache_including;
return $_return;
}
?>

View file

@ -0,0 +1,101 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* read a cache file, determine if it needs to be
* regenerated or not
*
* @param string $tpl_file
* @param string $cache_id
* @param string $compile_id
* @param string $results
* @return boolean
*/
// $tpl_file, $cache_id, $compile_id, &$results
function smarty_core_read_cache_file(&$params, &$smarty)
{
static $content_cache = array();
if ($smarty->force_compile) {
// force compile enabled, always regenerate
return false;
}
if (isset($content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']])) {
list($params['results'], $smarty->_cache_info) = $content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']];
return true;
}
if (!empty($smarty->cache_handler_func)) {
// use cache_handler function
call_user_func_array($smarty->cache_handler_func,
array('read', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null));
} else {
// use local cache file
$_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']);
$_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id);
$params['results'] = $smarty->_read_file($_cache_file);
}
if (empty($params['results'])) {
// nothing to parse (error?), regenerate cache
return false;
}
$_contents = $params['results'];
$_info_start = strpos($_contents, "\n") + 1;
$_info_len = (int)substr($_contents, 0, $_info_start - 1);
$_cache_info = unserialize(substr($_contents, $_info_start, $_info_len));
$params['results'] = substr($_contents, $_info_start + $_info_len);
if ($smarty->caching == 2 && isset ($_cache_info['expires'])){
// caching by expiration time
if ($_cache_info['expires'] > -1 && (time() > $_cache_info['expires'])) {
// cache expired, regenerate
return false;
}
} else {
// caching by lifetime
if ($smarty->cache_lifetime > -1 && (time() - $_cache_info['timestamp'] > $smarty->cache_lifetime)) {
// cache expired, regenerate
return false;
}
}
if ($smarty->compile_check) {
$_params = array('get_source' => false, 'quiet'=>true);
foreach (array_keys($_cache_info['template']) as $_template_dep) {
$_params['resource_name'] = $_template_dep;
if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) {
// template file has changed, regenerate cache
return false;
}
}
if (isset($_cache_info['config'])) {
$_params = array('resource_base_path' => $smarty->config_dir, 'get_source' => false, 'quiet'=>true);
foreach (array_keys($_cache_info['config']) as $_config_dep) {
$_params['resource_name'] = $_config_dep;
if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) {
// config file has changed, regenerate cache
return false;
}
}
}
}
$content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']] = array($params['results'], $_cache_info);
$smarty->_cache_info = $_cache_info;
return true;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,71 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* delete an automagically created file by name and id
*
* @param string $auto_base
* @param string $auto_source
* @param string $auto_id
* @param integer $exp_time
* @return boolean
*/
// $auto_base, $auto_source = null, $auto_id = null, $exp_time = null
function smarty_core_rm_auto($params, &$smarty)
{
if (!@is_dir($params['auto_base']))
return false;
if(!isset($params['auto_id']) && !isset($params['auto_source'])) {
$_params = array(
'dirname' => $params['auto_base'],
'level' => 0,
'exp_time' => $params['exp_time']
);
require_once(SMARTY_CORE_DIR . 'core.rmdir.php');
$_res = smarty_core_rmdir($_params, $smarty);
} else {
$_tname = $smarty->_get_auto_filename($params['auto_base'], $params['auto_source'], $params['auto_id']);
if(isset($params['auto_source'])) {
if (isset($params['extensions'])) {
$_res = false;
foreach ((array)$params['extensions'] as $_extension)
$_res |= $smarty->_unlink($_tname.$_extension, $params['exp_time']);
} else {
$_res = $smarty->_unlink($_tname, $params['exp_time']);
}
} elseif ($smarty->use_sub_dirs) {
$_params = array(
'dirname' => $_tname,
'level' => 1,
'exp_time' => $params['exp_time']
);
require_once(SMARTY_CORE_DIR . 'core.rmdir.php');
$_res = smarty_core_rmdir($_params, $smarty);
} else {
// remove matching file names
$_handle = opendir($params['auto_base']);
$_res = true;
while (false !== ($_filename = readdir($_handle))) {
if($_filename == '.' || $_filename == '..') {
continue;
} elseif (substr($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, 0, strlen($_tname)) == $_tname) {
$_res &= (bool)$smarty->_unlink($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, $params['exp_time']);
}
}
}
}
return $_res;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,54 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* delete a dir recursively (level=0 -> keep root)
* WARNING: no tests, it will try to remove what you tell it!
*
* @param string $dirname
* @param integer $level
* @param integer $exp_time
* @return boolean
*/
// $dirname, $level = 1, $exp_time = null
function smarty_core_rmdir($params, &$smarty)
{
if(!isset($params['level'])) { $params['level'] = 1; }
if(!isset($params['exp_time'])) { $params['exp_time'] = null; }
if($_handle = @opendir($params['dirname'])) {
while (false !== ($_entry = readdir($_handle))) {
if ($_entry != '.' && $_entry != '..') {
if (@is_dir($params['dirname'] . DIRECTORY_SEPARATOR . $_entry)) {
$_params = array(
'dirname' => $params['dirname'] . DIRECTORY_SEPARATOR . $_entry,
'level' => $params['level'] + 1,
'exp_time' => $params['exp_time']
);
smarty_core_rmdir($_params, $smarty);
}
else {
$smarty->_unlink($params['dirname'] . DIRECTORY_SEPARATOR . $_entry, $params['exp_time']);
}
}
}
closedir($_handle);
}
if ($params['level']) {
return @rmdir($params['dirname']);
}
return (bool)$_handle;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,71 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Handle insert tags
*
* @param array $args
* @return string
*/
function smarty_core_run_insert_handler($params, &$smarty)
{
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
if ($smarty->debugging) {
$_params = array();
$_debug_start_time = smarty_core_get_microtime($_params, $smarty);
}
if ($smarty->caching) {
$_arg_string = serialize($params['args']);
$_name = $params['args']['name'];
if (!isset($smarty->_cache_info['insert_tags'][$_name])) {
$smarty->_cache_info['insert_tags'][$_name] = array('insert',
$_name,
$smarty->_plugins['insert'][$_name][1],
$smarty->_plugins['insert'][$_name][2],
!empty($params['args']['script']) ? true : false);
}
return $smarty->_smarty_md5."{insert_cache $_arg_string}".$smarty->_smarty_md5;
} else {
if (isset($params['args']['script'])) {
$_params = array('resource_name' => $smarty->_dequote($params['args']['script']));
require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
if(!smarty_core_get_php_resource($_params, $smarty)) {
return false;
}
if ($_params['resource_type'] == 'file') {
$smarty->_include($_params['php_resource'], true);
} else {
$smarty->_eval($_params['php_resource']);
}
unset($params['args']['script']);
}
$_funcname = $smarty->_plugins['insert'][$params['args']['name']][0];
$_content = $_funcname($params['args'], $smarty);
if ($smarty->debugging) {
$_params = array();
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
$smarty->_smarty_debug_info[] = array('type' => 'insert',
'filename' => 'insert_'.$params['args']['name'],
'depth' => $smarty->_inclusion_depth,
'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time);
}
if (!empty($params['args']["assign"])) {
$smarty->assign($params['args']["assign"], $_content);
} else {
return $_content;
}
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,50 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* called for included php files within templates
*
* @param string $smarty_file
* @param string $smarty_assign variable to assign the included template's
* output into
* @param boolean $smarty_once uses include_once if this is true
* @param array $smarty_include_vars associative array of vars from
* {include file="blah" var=$var}
*/
// $file, $assign, $once, $_smarty_include_vars
function smarty_core_smarty_include_php($params, &$smarty)
{
$_params = array('resource_name' => $params['smarty_file']);
require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
smarty_core_get_php_resource($_params, $smarty);
$_smarty_resource_type = $_params['resource_type'];
$_smarty_php_resource = $_params['php_resource'];
if (!empty($params['smarty_assign'])) {
ob_start();
if ($_smarty_resource_type == 'file') {
$smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
} else {
$smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
}
$smarty->assign($params['smarty_assign'], ob_get_contents());
ob_end_clean();
} else {
if ($_smarty_resource_type == 'file') {
$smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']);
} else {
$smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']);
}
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,96 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Prepend the cache information to the cache file
* and write it
*
* @param string $tpl_file
* @param string $cache_id
* @param string $compile_id
* @param string $results
* @return true|null
*/
// $tpl_file, $cache_id, $compile_id, $results
function smarty_core_write_cache_file($params, &$smarty)
{
// put timestamp in cache header
$smarty->_cache_info['timestamp'] = time();
if ($smarty->cache_lifetime > -1){
// expiration set
$smarty->_cache_info['expires'] = $smarty->_cache_info['timestamp'] + $smarty->cache_lifetime;
} else {
// cache will never expire
$smarty->_cache_info['expires'] = -1;
}
// collapse nocache.../nocache-tags
if (preg_match_all('!\{(/?)nocache\:[0-9a-f]{32}#\d+\}!', $params['results'], $match, PREG_PATTERN_ORDER)) {
// remove everything between every pair of outermost noache.../nocache-tags
// and replace it by a single nocache-tag
// this new nocache-tag will be replaced by dynamic contents in
// smarty_core_process_compiled_includes() on a cache-read
$match_count = count($match[0]);
$results = preg_split('!(\{/?nocache\:[0-9a-f]{32}#\d+\})!', $params['results'], -1, PREG_SPLIT_DELIM_CAPTURE);
$level = 0;
$j = 0;
for ($i=0, $results_count = count($results); $i < $results_count && $j < $match_count; $i++) {
if ($results[$i] == $match[0][$j]) {
// nocache tag
if ($match[1][$j]) { // closing tag
$level--;
unset($results[$i]);
} else { // opening tag
if ($level++ > 0) unset($results[$i]);
}
$j++;
} elseif ($level > 0) {
unset($results[$i]);
}
}
$params['results'] = implode('', $results);
}
$smarty->_cache_info['cache_serials'] = $smarty->_cache_serials;
// prepend the cache header info into cache file
$_cache_info = serialize($smarty->_cache_info);
$params['results'] = strlen($_cache_info) . "\n" . $_cache_info . $params['results'];
if (!empty($smarty->cache_handler_func)) {
// use cache_handler function
call_user_func_array($smarty->cache_handler_func,
array('write', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], $smarty->_cache_info['expires']));
} else {
// use local cache file
if(!@is_writable($smarty->cache_dir)) {
// cache_dir not writable, see if it exists
if(!@is_dir($smarty->cache_dir)) {
$smarty->trigger_error('the $cache_dir \'' . $smarty->cache_dir . '\' does not exist, or is not a directory.', E_USER_ERROR);
return false;
}
$smarty->trigger_error('unable to write to $cache_dir \'' . realpath($smarty->cache_dir) . '\'. Be sure $cache_dir is writable by the web server user.', E_USER_ERROR);
return false;
}
$_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']);
$_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id);
$_params = array('filename' => $_cache_file, 'contents' => $params['results'], 'create_dirs' => true);
require_once(SMARTY_CORE_DIR . 'core.write_file.php');
smarty_core_write_file($_params, $smarty);
return true;
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,91 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Extract non-cacheable parts out of compiled template and write it
*
* @param string $compile_path
* @param string $template_compiled
* @return boolean
*/
function smarty_core_write_compiled_include($params, &$smarty)
{
$_tag_start = 'if \(\$this->caching && \!\$this->_cache_including\)\: echo \'\{nocache\:('.$params['cache_serial'].')#(\d+)\}\'; endif;';
$_tag_end = 'if \(\$this->caching && \!\$this->_cache_including\)\: echo \'\{/nocache\:(\\2)#(\\3)\}\'; endif;';
preg_match_all('!('.$_tag_start.'(.*)'.$_tag_end.')!Us',
$params['compiled_content'], $_match_source, PREG_SET_ORDER);
// no nocache-parts found: done
if (count($_match_source)==0) return;
// convert the matched php-code to functions
$_include_compiled = "<?php /* Smarty version ".$smarty->_version.", created on ".strftime("%Y-%m-%d %H:%M:%S")."\n";
$_include_compiled .= " compiled from " . strtr(urlencode($params['resource_name']), array('%2F'=>'/', '%3A'=>':')) . " */\n\n";
$_compile_path = $params['include_file_path'];
$smarty->_cache_serials[$_compile_path] = $params['cache_serial'];
$_include_compiled .= "\$this->_cache_serials['".$_compile_path."'] = '".$params['cache_serial']."';\n\n?>";
$_include_compiled .= $params['plugins_code'];
$_include_compiled .= "<?php";
$this_varname = ((double)phpversion() >= 5.0) ? '_smarty' : 'this';
for ($_i = 0, $_for_max = count($_match_source); $_i < $_for_max; $_i++) {
$_match =& $_match_source[$_i];
$source = $_match[4];
if ($this_varname == '_smarty') {
/* rename $this to $_smarty in the sourcecode */
$tokens = token_get_all('<?php ' . $_match[4]);
/* remove trailing <?php */
$open_tag = '';
while ($tokens) {
$token = array_shift($tokens);
if (is_array($token)) {
$open_tag .= $token[1];
} else {
$open_tag .= $token;
}
if ($open_tag == '<?php ') break;
}
for ($i=0, $count = count($tokens); $i < $count; $i++) {
if (is_array($tokens[$i])) {
if ($tokens[$i][0] == T_VARIABLE && $tokens[$i][1] == '$this') {
$tokens[$i] = '$' . $this_varname;
} else {
$tokens[$i] = $tokens[$i][1];
}
}
}
$source = implode('', $tokens);
}
/* add function to compiled include */
$_include_compiled .= "
function _smarty_tplfunc_$_match[2]_$_match[3](&\$$this_varname)
{
$source
}
";
}
$_include_compiled .= "\n\n?>\n";
$_params = array('filename' => $_compile_path,
'contents' => $_include_compiled, 'create_dirs' => true);
require_once(SMARTY_CORE_DIR . 'core.write_file.php');
smarty_core_write_file($_params, $smarty);
return true;
}
?>

View file

@ -0,0 +1,35 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* write the compiled resource
*
* @param string $compile_path
* @param string $compiled_content
* @return true
*/
function smarty_core_write_compiled_resource($params, &$smarty)
{
if(!@is_writable($smarty->compile_dir)) {
// compile_dir not writable, see if it exists
if(!@is_dir($smarty->compile_dir)) {
$smarty->trigger_error('the $compile_dir \'' . $smarty->compile_dir . '\' does not exist, or is not a directory.', E_USER_ERROR);
return false;
}
$smarty->trigger_error('unable to write to $compile_dir \'' . realpath($smarty->compile_dir) . '\'. Be sure $compile_dir is writable by the web server user.', E_USER_ERROR);
return false;
}
$_params = array('filename' => $params['compile_path'], 'contents' => $params['compiled_content'], 'create_dirs' => true);
require_once(SMARTY_CORE_DIR . 'core.write_file.php');
smarty_core_write_file($_params, $smarty);
return true;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,54 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* write out a file to disk
*
* @param string $filename
* @param string $contents
* @param boolean $create_dirs
* @return boolean
*/
function smarty_core_write_file($params, &$smarty)
{
$_dirname = dirname($params['filename']);
if ($params['create_dirs']) {
$_params = array('dir' => $_dirname);
require_once(SMARTY_CORE_DIR . 'core.create_dir_structure.php');
smarty_core_create_dir_structure($_params, $smarty);
}
// write to tmp file, then rename it to avoid file locking race condition
$_tmp_file = tempnam($_dirname, 'wrt');
if (!($fd = @fopen($_tmp_file, 'wb'))) {
$_tmp_file = $_dirname . DIRECTORY_SEPARATOR . uniqid('wrt');
if (!($fd = @fopen($_tmp_file, 'wb'))) {
$smarty->trigger_error("problem writing temporary file '$_tmp_file'");
return false;
}
}
fwrite($fd, $params['contents']);
fclose($fd);
if (DIRECTORY_SEPARATOR == '\\' || !@rename($_tmp_file, $params['filename'])) {
// On platforms and filesystems that cannot overwrite with rename()
// delete the file before renaming it -- because windows always suffers
// this, it is short-circuited to avoid the initial rename() attempt
@unlink($params['filename']);
@rename($_tmp_file, $params['filename']);
}
@chmod($params['filename'], $smarty->_file_perms);
return true;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,103 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {textformat}{/textformat} block plugin
*
* Type: block function<br>
* Name: textformat<br>
* Purpose: format text a certain way with preset styles
* or custom wrap/indent settings<br>
* @link http://smarty.php.net/manual/en/language.function.textformat.php {textformat}
* (Smarty online manual)
* @param array
* <pre>
* Params: style: string (email)
* indent: integer (0)
* wrap: integer (80)
* wrap_char string ("\n")
* indent_char: string (" ")
* wrap_boundary: boolean (true)
* </pre>
* @author Monte Ohrt <monte at ohrt dot com>
* @param string contents of the block
* @param Smarty clever simulation of a method
* @return string string $content re-formatted
*/
function smarty_block_textformat($params, $content, &$smarty)
{
if (is_null($content)) {
return;
}
$style = null;
$indent = 0;
$indent_first = 0;
$indent_char = ' ';
$wrap = 80;
$wrap_char = "\n";
$wrap_cut = false;
$assign = null;
foreach ($params as $_key => $_val) {
switch ($_key) {
case 'style':
case 'indent_char':
case 'wrap_char':
case 'assign':
$$_key = (string)$_val;
break;
case 'indent':
case 'indent_first':
case 'wrap':
$$_key = (int)$_val;
break;
case 'wrap_cut':
$$_key = (bool)$_val;
break;
default:
$smarty->trigger_error("textformat: unknown attribute '$_key'");
}
}
if ($style == 'email') {
$wrap = 72;
}
// split into paragraphs
$_paragraphs = preg_split('![\r\n][\r\n]!',$content);
$_output = '';
for($_x = 0, $_y = count($_paragraphs); $_x < $_y; $_x++) {
if ($_paragraphs[$_x] == '') {
continue;
}
// convert mult. spaces & special chars to single space
$_paragraphs[$_x] = preg_replace(array('!\s+!','!(^\s+)|(\s+$)!'), array(' ',''), $_paragraphs[$_x]);
// indent first line
if($indent_first > 0) {
$_paragraphs[$_x] = str_repeat($indent_char, $indent_first) . $_paragraphs[$_x];
}
// wordwrap sentences
$_paragraphs[$_x] = wordwrap($_paragraphs[$_x], $wrap - $indent, $wrap_char, $wrap_cut);
// indent lines
if($indent > 0) {
$_paragraphs[$_x] = preg_replace('!^!m', str_repeat($indent_char, $indent), $_paragraphs[$_x]);
}
}
$_output = implode($wrap_char . $wrap_char, $_paragraphs);
return $assign ? $smarty->assign($assign, $_output) : $_output;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,40 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {assign} compiler function plugin
*
* Type: compiler function<br>
* Name: assign<br>
* Purpose: assign a value to a template variable
* @link http://smarty.php.net/manual/en/language.custom.functions.php#LANGUAGE.FUNCTION.ASSIGN {assign}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com> (initial author)
* @author messju mohr <messju at lammfellpuschen dot de> (conversion to compiler function)
* @param string containing var-attribute and value-attribute
* @param Smarty_Compiler
*/
function smarty_compiler_assign($tag_attrs, &$compiler)
{
$_params = $compiler->_parse_attrs($tag_attrs);
if (!isset($_params['var'])) {
$compiler->_syntax_error("assign: missing 'var' parameter", E_USER_WARNING);
return;
}
if (!isset($_params['value'])) {
$compiler->_syntax_error("assign: missing 'value' parameter", E_USER_WARNING);
return;
}
return "\$this->assign({$_params['var']}, {$_params['value']});";
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,40 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {assign_debug_info} function plugin
*
* Type: function<br>
* Name: assign_debug_info<br>
* Purpose: assign debug info to the template<br>
* @author Monte Ohrt <monte at ohrt dot com>
* @param array unused in this plugin, this plugin uses {@link Smarty::$_config},
* {@link Smarty::$_tpl_vars} and {@link Smarty::$_smarty_debug_info}
* @param Smarty
*/
function smarty_function_assign_debug_info($params, &$smarty)
{
$assigned_vars = $smarty->_tpl_vars;
ksort($assigned_vars);
if (@is_array($smarty->_config[0])) {
$config_vars = $smarty->_config[0];
ksort($config_vars);
$smarty->assign("_debug_config_keys", array_keys($config_vars));
$smarty->assign("_debug_config_vals", array_values($config_vars));
}
$included_templates = $smarty->_smarty_debug_info;
$smarty->assign("_debug_keys", array_keys($assigned_vars));
$smarty->assign("_debug_vals", array_values($assigned_vars));
$smarty->assign("_debug_tpls", $included_templates);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,142 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {config_load} function plugin
*
* Type: function<br>
* Name: config_load<br>
* Purpose: load config file vars
* @link http://smarty.php.net/manual/en/language.function.config.load.php {config_load}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @author messju mohr <messju at lammfellpuschen dot de> (added use of resources)
* @param array Format:
* <pre>
* array('file' => required config file name,
* 'section' => optional config file section to load
* 'scope' => local/parent/global
* 'global' => overrides scope, setting to parent if true)
* </pre>
* @param Smarty
*/
function smarty_function_config_load($params, &$smarty)
{
if ($smarty->debugging) {
$_params = array();
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
$_debug_start_time = smarty_core_get_microtime($_params, $smarty);
}
$_file = isset($params['file']) ? $smarty->_dequote($params['file']) : null;
$_section = isset($params['section']) ? $smarty->_dequote($params['section']) : null;
$_scope = isset($params['scope']) ? $smarty->_dequote($params['scope']) : 'global';
$_global = isset($params['global']) ? $smarty->_dequote($params['global']) : false;
if (!isset($_file) || strlen($_file) == 0) {
$smarty->trigger_error("missing 'file' attribute in config_load tag", E_USER_ERROR, __FILE__, __LINE__);
}
if (isset($_scope)) {
if ($_scope != 'local' &&
$_scope != 'parent' &&
$_scope != 'global') {
$smarty->trigger_error("invalid 'scope' attribute value", E_USER_ERROR, __FILE__, __LINE__);
}
} else {
if ($_global) {
$_scope = 'parent';
} else {
$_scope = 'local';
}
}
$_params = array('resource_name' => $_file,
'resource_base_path' => $smarty->config_dir,
'get_source' => false);
$smarty->_parse_resource_name($_params);
$_file_path = $_params['resource_type'] . ':' . $_params['resource_name'];
if (isset($_section))
$_compile_file = $smarty->_get_compile_path($_file_path.'|'.$_section);
else
$_compile_file = $smarty->_get_compile_path($_file_path);
if($smarty->force_compile || !file_exists($_compile_file)) {
$_compile = true;
} elseif ($smarty->compile_check) {
$_params = array('resource_name' => $_file,
'resource_base_path' => $smarty->config_dir,
'get_source' => false);
$_compile = $smarty->_fetch_resource_info($_params) &&
$_params['resource_timestamp'] > filemtime($_compile_file);
} else {
$_compile = false;
}
if($_compile) {
// compile config file
if(!is_object($smarty->_conf_obj)) {
require_once SMARTY_DIR . $smarty->config_class . '.class.php';
$smarty->_conf_obj = new $smarty->config_class();
$smarty->_conf_obj->overwrite = $smarty->config_overwrite;
$smarty->_conf_obj->booleanize = $smarty->config_booleanize;
$smarty->_conf_obj->read_hidden = $smarty->config_read_hidden;
$smarty->_conf_obj->fix_newlines = $smarty->config_fix_newlines;
}
$_params = array('resource_name' => $_file,
'resource_base_path' => $smarty->config_dir,
$_params['get_source'] = true);
if (!$smarty->_fetch_resource_info($_params)) {
return;
}
$smarty->_conf_obj->set_file_contents($_file, $_params['source_content']);
$_config_vars = array_merge($smarty->_conf_obj->get($_file),
$smarty->_conf_obj->get($_file, $_section));
if(function_exists('var_export')) {
$_output = '<?php $_config_vars = ' . var_export($_config_vars, true) . '; ?>';
} else {
$_output = '<?php $_config_vars = unserialize(\'' . strtr(serialize($_config_vars),array('\''=>'\\\'', '\\'=>'\\\\')) . '\'); ?>';
}
$_params = (array('compile_path' => $_compile_file, 'compiled_content' => $_output, 'resource_timestamp' => $_params['resource_timestamp']));
require_once(SMARTY_CORE_DIR . 'core.write_compiled_resource.php');
smarty_core_write_compiled_resource($_params, $smarty);
} else {
include($_compile_file);
}
if ($smarty->caching) {
$smarty->_cache_info['config'][$_file] = true;
}
$smarty->_config[0]['vars'] = @array_merge($smarty->_config[0]['vars'], $_config_vars);
$smarty->_config[0]['files'][$_file] = true;
if ($_scope == 'parent') {
$smarty->_config[1]['vars'] = @array_merge($smarty->_config[1]['vars'], $_config_vars);
$smarty->_config[1]['files'][$_file] = true;
} else if ($_scope == 'global') {
for ($i = 1, $for_max = count($smarty->_config); $i < $for_max; $i++) {
$smarty->_config[$i]['vars'] = @array_merge($smarty->_config[$i]['vars'], $_config_vars);
$smarty->_config[$i]['files'][$_file] = true;
}
}
if ($smarty->debugging) {
$_params = array();
require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
$smarty->_smarty_debug_info[] = array('type' => 'config',
'filename' => $_file.' ['.$_section.'] '.$_scope,
'depth' => $smarty->_inclusion_depth,
'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time);
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,80 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {counter} function plugin
*
* Type: function<br>
* Name: counter<br>
* Purpose: print out a counter value
* @author Monte Ohrt <monte at ohrt dot com>
* @link http://smarty.php.net/manual/en/language.function.counter.php {counter}
* (Smarty online manual)
* @param array parameters
* @param Smarty
* @return string|null
*/
function smarty_function_counter($params, &$smarty)
{
static $counters = array();
$name = (isset($params['name'])) ? $params['name'] : 'default';
if (!isset($counters[$name])) {
$counters[$name] = array(
'start'=>1,
'skip'=>1,
'direction'=>'up',
'count'=>1
);
}
$counter =& $counters[$name];
if (isset($params['start'])) {
$counter['start'] = $counter['count'] = (int)$params['start'];
}
if (!empty($params['assign'])) {
$counter['assign'] = $params['assign'];
}
if (isset($counter['assign'])) {
$smarty->assign($counter['assign'], $counter['count']);
}
if (isset($params['print'])) {
$print = (bool)$params['print'];
} else {
$print = empty($counter['assign']);
}
if ($print) {
$retval = $counter['count'];
} else {
$retval = null;
}
if (isset($params['skip'])) {
$counter['skip'] = $params['skip'];
}
if (isset($params['direction'])) {
$counter['direction'] = $params['direction'];
}
if ($counter['direction'] == "down")
$counter['count'] -= $counter['skip'];
else
$counter['count'] += $counter['skip'];
return $retval;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,102 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {cycle} function plugin
*
* Type: function<br>
* Name: cycle<br>
* Date: May 3, 2002<br>
* Purpose: cycle through given values<br>
* Input:
* - name = name of cycle (optional)
* - values = comma separated list of values to cycle,
* or an array of values to cycle
* (this can be left out for subsequent calls)
* - reset = boolean - resets given var to true
* - print = boolean - print var or not. default is true
* - advance = boolean - whether or not to advance the cycle
* - delimiter = the value delimiter, default is ","
* - assign = boolean, assigns to template var instead of
* printed.
*
* Examples:<br>
* <pre>
* {cycle values="#eeeeee,#d0d0d0d"}
* {cycle name=row values="one,two,three" reset=true}
* {cycle name=row}
* </pre>
* @link http://smarty.php.net/manual/en/language.function.cycle.php {cycle}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @author credit to Mark Priatel <mpriatel@rogers.com>
* @author credit to Gerard <gerard@interfold.com>
* @author credit to Jason Sweat <jsweat_php@yahoo.com>
* @version 1.3
* @param array
* @param Smarty
* @return string|null
*/
function smarty_function_cycle($params, &$smarty)
{
static $cycle_vars;
$name = (empty($params['name'])) ? 'default' : $params['name'];
$print = (isset($params['print'])) ? (bool)$params['print'] : true;
$advance = (isset($params['advance'])) ? (bool)$params['advance'] : true;
$reset = (isset($params['reset'])) ? (bool)$params['reset'] : false;
if (!in_array('values', array_keys($params))) {
if(!isset($cycle_vars[$name]['values'])) {
$smarty->trigger_error("cycle: missing 'values' parameter");
return;
}
} else {
if(isset($cycle_vars[$name]['values'])
&& $cycle_vars[$name]['values'] != $params['values'] ) {
$cycle_vars[$name]['index'] = 0;
}
$cycle_vars[$name]['values'] = $params['values'];
}
$cycle_vars[$name]['delimiter'] = (isset($params['delimiter'])) ? $params['delimiter'] : ',';
if(is_array($cycle_vars[$name]['values'])) {
$cycle_array = $cycle_vars[$name]['values'];
} else {
$cycle_array = explode($cycle_vars[$name]['delimiter'],$cycle_vars[$name]['values']);
}
if(!isset($cycle_vars[$name]['index']) || $reset ) {
$cycle_vars[$name]['index'] = 0;
}
if (isset($params['assign'])) {
$print = false;
$smarty->assign($params['assign'], $cycle_array[$cycle_vars[$name]['index']]);
}
if($print) {
$retval = $cycle_array[$cycle_vars[$name]['index']];
} else {
$retval = null;
}
if($advance) {
if ( $cycle_vars[$name]['index'] >= count($cycle_array) -1 ) {
$cycle_vars[$name]['index'] = 0;
} else {
$cycle_vars[$name]['index']++;
}
}
return $retval;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,35 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {debug} function plugin
*
* Type: function<br>
* Name: debug<br>
* Date: July 1, 2002<br>
* Purpose: popup debug window
* @link http://smarty.php.net/manual/en/language.function.debug.php {debug}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @version 1.0
* @param array
* @param Smarty
* @return string output from {@link Smarty::_generate_debug_output()}
*/
function smarty_function_debug($params, &$smarty)
{
if (isset($params['output'])) {
$smarty->assign('_smarty_debug_output', $params['output']);
}
require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php');
return smarty_core_display_debug_console(null, $smarty);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,49 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {eval} function plugin
*
* Type: function<br>
* Name: eval<br>
* Purpose: evaluate a template variable as a template<br>
* @link http://smarty.php.net/manual/en/language.function.eval.php {eval}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
*/
function smarty_function_eval($params, &$smarty)
{
if (!isset($params['var'])) {
$smarty->trigger_error("eval: missing 'var' parameter");
return;
}
if($params['var'] == '') {
return;
}
$smarty->_compile_source('evaluated template', $params['var'], $_var_compiled);
ob_start();
$smarty->_eval('?>' . $_var_compiled);
$_contents = ob_get_contents();
ob_end_clean();
if (!empty($params['assign'])) {
$smarty->assign($params['assign'], $_contents);
} else {
return $_contents;
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,221 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {fetch} plugin
*
* Type: function<br>
* Name: fetch<br>
* Purpose: fetch file, web or ftp data and display results
* @link http://smarty.php.net/manual/en/language.function.fetch.php {fetch}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string|null if the assign parameter is passed, Smarty assigns the
* result to a template variable
*/
function smarty_function_fetch($params, &$smarty)
{
if (empty($params['file'])) {
$smarty->_trigger_fatal_error("[plugin] parameter 'file' cannot be empty");
return;
}
$content = '';
if ($smarty->security && !preg_match('!^(http|ftp)://!i', $params['file'])) {
$_params = array('resource_type' => 'file', 'resource_name' => $params['file']);
require_once(SMARTY_CORE_DIR . 'core.is_secure.php');
if(!smarty_core_is_secure($_params, $smarty)) {
$smarty->_trigger_fatal_error('[plugin] (secure mode) fetch \'' . $params['file'] . '\' is not allowed');
return;
}
// fetch the file
if($fp = @fopen($params['file'],'r')) {
while(!feof($fp)) {
$content .= fgets ($fp,4096);
}
fclose($fp);
} else {
$smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] . '\'');
return;
}
} else {
// not a local file
if(preg_match('!^http://!i',$params['file'])) {
// http fetch
if($uri_parts = parse_url($params['file'])) {
// set defaults
$host = $server_name = $uri_parts['host'];
$timeout = 30;
$accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*";
$agent = "Smarty Template Engine ".$smarty->_version;
$referer = "";
$uri = !empty($uri_parts['path']) ? $uri_parts['path'] : '/';
$uri .= !empty($uri_parts['query']) ? '?' . $uri_parts['query'] : '';
$_is_proxy = false;
if(empty($uri_parts['port'])) {
$port = 80;
} else {
$port = $uri_parts['port'];
}
if(!empty($uri_parts['user'])) {
$user = $uri_parts['user'];
}
if(!empty($uri_parts['pass'])) {
$pass = $uri_parts['pass'];
}
// loop through parameters, setup headers
foreach($params as $param_key => $param_value) {
switch($param_key) {
case "file":
case "assign":
case "assign_headers":
break;
case "user":
if(!empty($param_value)) {
$user = $param_value;
}
break;
case "pass":
if(!empty($param_value)) {
$pass = $param_value;
}
break;
case "accept":
if(!empty($param_value)) {
$accept = $param_value;
}
break;
case "header":
if(!empty($param_value)) {
if(!preg_match('![\w\d-]+: .+!',$param_value)) {
$smarty->_trigger_fatal_error("[plugin] invalid header format '".$param_value."'");
return;
} else {
$extra_headers[] = $param_value;
}
}
break;
case "proxy_host":
if(!empty($param_value)) {
$proxy_host = $param_value;
}
break;
case "proxy_port":
if(!preg_match('!\D!', $param_value)) {
$proxy_port = (int) $param_value;
} else {
$smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'");
return;
}
break;
case "agent":
if(!empty($param_value)) {
$agent = $param_value;
}
break;
case "referer":
if(!empty($param_value)) {
$referer = $param_value;
}
break;
case "timeout":
if(!preg_match('!\D!', $param_value)) {
$timeout = (int) $param_value;
} else {
$smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'");
return;
}
break;
default:
$smarty->_trigger_fatal_error("[plugin] unrecognized attribute '".$param_key."'");
return;
}
}
if(!empty($proxy_host) && !empty($proxy_port)) {
$_is_proxy = true;
$fp = fsockopen($proxy_host,$proxy_port,$errno,$errstr,$timeout);
} else {
$fp = fsockopen($server_name,$port,$errno,$errstr,$timeout);
}
if(!$fp) {
$smarty->_trigger_fatal_error("[plugin] unable to fetch: $errstr ($errno)");
return;
} else {
if($_is_proxy) {
fputs($fp, 'GET ' . $params['file'] . " HTTP/1.0\r\n");
} else {
fputs($fp, "GET $uri HTTP/1.0\r\n");
}
if(!empty($host)) {
fputs($fp, "Host: $host\r\n");
}
if(!empty($accept)) {
fputs($fp, "Accept: $accept\r\n");
}
if(!empty($agent)) {
fputs($fp, "User-Agent: $agent\r\n");
}
if(!empty($referer)) {
fputs($fp, "Referer: $referer\r\n");
}
if(isset($extra_headers) && is_array($extra_headers)) {
foreach($extra_headers as $curr_header) {
fputs($fp, $curr_header."\r\n");
}
}
if(!empty($user) && !empty($pass)) {
fputs($fp, "Authorization: BASIC ".base64_encode("$user:$pass")."\r\n");
}
fputs($fp, "\r\n");
while(!feof($fp)) {
$content .= fgets($fp,4096);
}
fclose($fp);
$csplit = split("\r\n\r\n",$content,2);
$content = $csplit[1];
if(!empty($params['assign_headers'])) {
$smarty->assign($params['assign_headers'],split("\r\n",$csplit[0]));
}
}
} else {
$smarty->_trigger_fatal_error("[plugin] unable to parse URL, check syntax");
return;
}
} else {
// ftp fetch
if($fp = @fopen($params['file'],'r')) {
while(!feof($fp)) {
$content .= fgets ($fp,4096);
}
fclose($fp);
} else {
$smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] .'\'');
return;
}
}
}
if (!empty($params['assign'])) {
$smarty->assign($params['assign'],$content);
} else {
return $content;
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,143 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_checkboxes} function plugin
*
* File: function.html_checkboxes.php<br>
* Type: function<br>
* Name: html_checkboxes<br>
* Date: 24.Feb.2003<br>
* Purpose: Prints out a list of checkbox input types<br>
* Input:<br>
* - name (optional) - string default "checkbox"
* - values (required) - array
* - options (optional) - associative array
* - checked (optional) - array default not set
* - separator (optional) - ie <br> or &nbsp;
* - output (optional) - the output next to each checkbox
* - assign (optional) - assign the output as an array to this variable
* Examples:
* <pre>
* {html_checkboxes values=$ids output=$names}
* {html_checkboxes values=$ids name='box' separator='<br>' output=$names}
* {html_checkboxes values=$ids checked=$checked separator='<br>' output=$names}
* </pre>
* @link http://smarty.php.net/manual/en/language.function.html.checkboxes.php {html_checkboxes}
* (Smarty online manual)
* @author Christopher Kvarme <christopher.kvarme@flashjab.com>
* @author credits to Monte Ohrt <monte at ohrt dot com>
* @version 1.0
* @param array
* @param Smarty
* @return string
* @uses smarty_function_escape_special_chars()
*/
function smarty_function_html_checkboxes($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','escape_special_chars');
$name = 'checkbox';
$values = null;
$options = null;
$selected = null;
$separator = '';
$labels = true;
$output = null;
$extra = '';
foreach($params as $_key => $_val) {
switch($_key) {
case 'name':
case 'separator':
$$_key = $_val;
break;
case 'labels':
$$_key = (bool)$_val;
break;
case 'options':
$$_key = (array)$_val;
break;
case 'values':
case 'output':
$$_key = array_values((array)$_val);
break;
case 'checked':
case 'selected':
$selected = array_map('strval', array_values((array)$_val));
break;
case 'checkboxes':
$smarty->trigger_error('html_checkboxes: the use of the "checkboxes" attribute is deprecated, use "options" instead', E_USER_WARNING);
$options = (array)$_val;
break;
case 'assign':
break;
default:
if(!is_array($_val)) {
$extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"';
} else {
$smarty->trigger_error("html_checkboxes: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
}
}
if (!isset($options) && !isset($values))
return ''; /* raise error here? */
settype($selected, 'array');
$_html_result = array();
if (isset($options)) {
foreach ($options as $_key=>$_val)
$_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels);
} else {
foreach ($values as $_i=>$_key) {
$_val = isset($output[$_i]) ? $output[$_i] : '';
$_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels);
}
}
if(!empty($params['assign'])) {
$smarty->assign($params['assign'], $_html_result);
} else {
return implode("\n",$_html_result);
}
}
function smarty_function_html_checkboxes_output($name, $value, $output, $selected, $extra, $separator, $labels) {
$_output = '';
if ($labels) $_output .= '<label>';
$_output .= '<input type="checkbox" name="'
. smarty_function_escape_special_chars($name) . '[]" value="'
. smarty_function_escape_special_chars($value) . '"';
if (in_array((string)$value, $selected)) {
$_output .= ' checked="checked"';
}
$_output .= $extra . ' />' . $output;
if ($labels) $_output .= '</label>';
$_output .= $separator;
return $_output;
}
?>

View file

@ -0,0 +1,142 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_image} function plugin
*
* Type: function<br>
* Name: html_image<br>
* Date: Feb 24, 2003<br>
* Purpose: format HTML tags for the image<br>
* Input:<br>
* - file = file (and path) of image (required)
* - height = image height (optional, default actual height)
* - width = image width (optional, default actual width)
* - basedir = base directory for absolute paths, default
* is environment variable DOCUMENT_ROOT
* - path_prefix = prefix for path output (optional, default empty)
*
* Examples: {html_image file="/images/masthead.gif"}
* Output: <img src="/images/masthead.gif" width=400 height=23>
* @link http://smarty.php.net/manual/en/language.function.html.image.php {html_image}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @author credits to Duda <duda@big.hu> - wrote first image function
* in repository, helped with lots of functionality
* @version 1.0
* @param array
* @param Smarty
* @return string
* @uses smarty_function_escape_special_chars()
*/
function smarty_function_html_image($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','escape_special_chars');
$alt = '';
$file = '';
$height = '';
$width = '';
$extra = '';
$prefix = '';
$suffix = '';
$path_prefix = '';
$server_vars = ($smarty->request_use_auto_globals) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS'];
$basedir = isset($server_vars['DOCUMENT_ROOT']) ? $server_vars['DOCUMENT_ROOT'] : '';
foreach($params as $_key => $_val) {
switch($_key) {
case 'file':
case 'height':
case 'width':
case 'dpi':
case 'path_prefix':
case 'basedir':
$$_key = $_val;
break;
case 'alt':
if(!is_array($_val)) {
$$_key = smarty_function_escape_special_chars($_val);
} else {
$smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
case 'link':
case 'href':
$prefix = '<a href="' . $_val . '">';
$suffix = '</a>';
break;
default:
if(!is_array($_val)) {
$extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"';
} else {
$smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
}
}
if (empty($file)) {
$smarty->trigger_error("html_image: missing 'file' parameter", E_USER_NOTICE);
return;
}
if (substr($file,0,1) == '/') {
$_image_path = $basedir . $file;
} else {
$_image_path = $file;
}
if(!isset($params['width']) || !isset($params['height'])) {
if(!$_image_data = @getimagesize($_image_path)) {
if(!file_exists($_image_path)) {
$smarty->trigger_error("html_image: unable to find '$_image_path'", E_USER_NOTICE);
return;
} else if(!is_readable($_image_path)) {
$smarty->trigger_error("html_image: unable to read '$_image_path'", E_USER_NOTICE);
return;
} else {
$smarty->trigger_error("html_image: '$_image_path' is not a valid image file", E_USER_NOTICE);
return;
}
}
if ($smarty->security &&
($_params = array('resource_type' => 'file', 'resource_name' => $_image_path)) &&
(require_once(SMARTY_CORE_DIR . 'core.is_secure.php')) &&
(!smarty_core_is_secure($_params, $smarty)) ) {
$smarty->trigger_error("html_image: (secure) '$_image_path' not in secure directory", E_USER_NOTICE);
}
if(!isset($params['width'])) {
$width = $_image_data[0];
}
if(!isset($params['height'])) {
$height = $_image_data[1];
}
}
if(isset($params['dpi'])) {
if(strstr($server_vars['HTTP_USER_AGENT'], 'Mac')) {
$dpi_default = 72;
} else {
$dpi_default = 96;
}
$_resize = $dpi_default/$params['dpi'];
$width = round($width * $_resize);
$height = round($height * $_resize);
}
return $prefix . '<img src="'.$path_prefix.$file.'" alt="'.$alt.'" width="'.$width.'" height="'.$height.'"'.$extra.' />' . $suffix;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,122 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_options} function plugin
*
* Type: function<br>
* Name: html_options<br>
* Input:<br>
* - name (optional) - string default "select"
* - values (required if no options supplied) - array
* - options (required if no values supplied) - associative array
* - selected (optional) - string default not set
* - output (required if not options supplied) - array
* Purpose: Prints the list of <option> tags generated from
* the passed parameters
* @link http://smarty.php.net/manual/en/language.function.html.options.php {html_image}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string
* @uses smarty_function_escape_special_chars()
*/
function smarty_function_html_options($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','escape_special_chars');
$name = null;
$values = null;
$options = null;
$selected = array();
$output = null;
$extra = '';
foreach($params as $_key => $_val) {
switch($_key) {
case 'name':
$$_key = (string)$_val;
break;
case 'options':
$$_key = (array)$_val;
break;
case 'values':
case 'output':
$$_key = array_values((array)$_val);
break;
case 'selected':
$$_key = array_map('strval', array_values((array)$_val));
break;
default:
if(!is_array($_val)) {
$extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"';
} else {
$smarty->trigger_error("html_options: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
}
}
if (!isset($options) && !isset($values))
return ''; /* raise error here? */
$_html_result = '';
if (isset($options)) {
foreach ($options as $_key=>$_val)
$_html_result .= smarty_function_html_options_optoutput($_key, $_val, $selected);
} else {
foreach ($values as $_i=>$_key) {
$_val = isset($output[$_i]) ? $output[$_i] : '';
$_html_result .= smarty_function_html_options_optoutput($_key, $_val, $selected);
}
}
if(!empty($name)) {
$_html_result = '<select name="' . $name . '"' . $extra . '>' . "\n" . $_html_result . '</select>' . "\n";
}
return $_html_result;
}
function smarty_function_html_options_optoutput($key, $value, $selected) {
if(!is_array($value)) {
$_html_result = '<option label="' . smarty_function_escape_special_chars($value) . '" value="' .
smarty_function_escape_special_chars($key) . '"';
if (in_array((string)$key, $selected))
$_html_result .= ' selected="selected"';
$_html_result .= '>' . smarty_function_escape_special_chars($value) . '</option>' . "\n";
} else {
$_html_result = smarty_function_html_options_optgroup($key, $value, $selected);
}
return $_html_result;
}
function smarty_function_html_options_optgroup($key, $values, $selected) {
$optgroup_html = '<optgroup label="' . smarty_function_escape_special_chars($key) . '">' . "\n";
foreach ($values as $key => $value) {
$optgroup_html .= smarty_function_html_options_optoutput($key, $value, $selected);
}
$optgroup_html .= "</optgroup>\n";
return $optgroup_html;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,156 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_radios} function plugin
*
* File: function.html_radios.php<br>
* Type: function<br>
* Name: html_radios<br>
* Date: 24.Feb.2003<br>
* Purpose: Prints out a list of radio input types<br>
* Input:<br>
* - name (optional) - string default "radio"
* - values (required) - array
* - options (optional) - associative array
* - checked (optional) - array default not set
* - separator (optional) - ie <br> or &nbsp;
* - output (optional) - the output next to each radio button
* - assign (optional) - assign the output as an array to this variable
* Examples:
* <pre>
* {html_radios values=$ids output=$names}
* {html_radios values=$ids name='box' separator='<br>' output=$names}
* {html_radios values=$ids checked=$checked separator='<br>' output=$names}
* </pre>
* @link http://smarty.php.net/manual/en/language.function.html.radios.php {html_radios}
* (Smarty online manual)
* @author Christopher Kvarme <christopher.kvarme@flashjab.com>
* @author credits to Monte Ohrt <monte at ohrt dot com>
* @version 1.0
* @param array
* @param Smarty
* @return string
* @uses smarty_function_escape_special_chars()
*/
function smarty_function_html_radios($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','escape_special_chars');
$name = 'radio';
$values = null;
$options = null;
$selected = null;
$separator = '';
$labels = true;
$label_ids = false;
$output = null;
$extra = '';
foreach($params as $_key => $_val) {
switch($_key) {
case 'name':
case 'separator':
$$_key = (string)$_val;
break;
case 'checked':
case 'selected':
if(is_array($_val)) {
$smarty->trigger_error('html_radios: the "' . $_key . '" attribute cannot be an array', E_USER_WARNING);
} else {
$selected = (string)$_val;
}
break;
case 'labels':
case 'label_ids':
$$_key = (bool)$_val;
break;
case 'options':
$$_key = (array)$_val;
break;
case 'values':
case 'output':
$$_key = array_values((array)$_val);
break;
case 'radios':
$smarty->trigger_error('html_radios: the use of the "radios" attribute is deprecated, use "options" instead', E_USER_WARNING);
$options = (array)$_val;
break;
case 'assign':
break;
default:
if(!is_array($_val)) {
$extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"';
} else {
$smarty->trigger_error("html_radios: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
}
}
if (!isset($options) && !isset($values))
return ''; /* raise error here? */
$_html_result = array();
if (isset($options)) {
foreach ($options as $_key=>$_val)
$_html_result[] = smarty_function_html_radios_output($name, $_key, $_val, $selected, $extra, $separator, $labels, $label_ids);
} else {
foreach ($values as $_i=>$_key) {
$_val = isset($output[$_i]) ? $output[$_i] : '';
$_html_result[] = smarty_function_html_radios_output($name, $_key, $_val, $selected, $extra, $separator, $labels, $label_ids);
}
}
if(!empty($params['assign'])) {
$smarty->assign($params['assign'], $_html_result);
} else {
return implode("\n",$_html_result);
}
}
function smarty_function_html_radios_output($name, $value, $output, $selected, $extra, $separator, $labels, $label_ids) {
$_output = '';
if ($labels) {
if($label_ids) {
$_id = smarty_function_escape_special_chars(preg_replace('![^\w\-\.]!', '_', $name . '_' . $value));
$_output .= '<label for="' . $_id . '">';
} else {
$_output .= '<label>';
}
}
$_output .= '<input type="radio" name="'
. smarty_function_escape_special_chars($name) . '" value="'
. smarty_function_escape_special_chars($value) . '"';
if ($labels && $label_ids) $_output .= ' id="' . $_id . '"';
if ((string)$value==$selected) {
$_output .= ' checked="checked"';
}
$_output .= $extra . ' />' . $output;
if ($labels) $_output .= '</label>';
$_output .= $separator;
return $_output;
}
?>

View file

@ -0,0 +1,331 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_select_date} plugin
*
* Type: function<br>
* Name: html_select_date<br>
* Purpose: Prints the dropdowns for date selection.
*
* ChangeLog:<br>
* - 1.0 initial release
* - 1.1 added support for +/- N syntax for begin
* and end year values. (Monte)
* - 1.2 added support for yyyy-mm-dd syntax for
* time value. (Jan Rosier)
* - 1.3 added support for choosing format for
* month values (Gary Loescher)
* - 1.3.1 added support for choosing format for
* day values (Marcus Bointon)
* - 1.3.2 support negative timestamps, force year
* dropdown to include given date unless explicitly set (Monte)
* - 1.3.4 fix behaviour of 0000-00-00 00:00:00 dates to match that
* of 0000-00-00 dates (cybot, boots)
* @link http://smarty.php.net/manual/en/language.function.html.select.date.php {html_select_date}
* (Smarty online manual)
* @version 1.3.4
* @author Andrei Zmievski
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string
*/
function smarty_function_html_select_date($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','escape_special_chars');
require_once $smarty->_get_plugin_filepath('shared','make_timestamp');
require_once $smarty->_get_plugin_filepath('function','html_options');
/* Default values. */
$prefix = "Date_";
$start_year = strftime("%Y");
$end_year = $start_year;
$display_days = true;
$display_months = true;
$display_years = true;
$month_format = "%B";
/* Write months as numbers by default GL */
$month_value_format = "%m";
$day_format = "%02d";
/* Write day values using this format MB */
$day_value_format = "%d";
$year_as_text = false;
/* Display years in reverse order? Ie. 2000,1999,.... */
$reverse_years = false;
/* Should the select boxes be part of an array when returned from PHP?
e.g. setting it to "birthday", would create "birthday[Day]",
"birthday[Month]" & "birthday[Year]". Can be combined with prefix */
$field_array = null;
/* <select size>'s of the different <select> tags.
If not set, uses default dropdown. */
$day_size = null;
$month_size = null;
$year_size = null;
/* Unparsed attributes common to *ALL* the <select>/<input> tags.
An example might be in the template: all_extra ='class ="foo"'. */
$all_extra = null;
/* Separate attributes for the tags. */
$day_extra = null;
$month_extra = null;
$year_extra = null;
/* Order in which to display the fields.
"D" -> day, "M" -> month, "Y" -> year. */
$field_order = 'MDY';
/* String printed between the different fields. */
$field_separator = "\n";
$time = time();
$all_empty = null;
$day_empty = null;
$month_empty = null;
$year_empty = null;
$extra_attrs = '';
foreach ($params as $_key=>$_value) {
switch ($_key) {
case 'prefix':
case 'time':
case 'start_year':
case 'end_year':
case 'month_format':
case 'day_format':
case 'day_value_format':
case 'field_array':
case 'day_size':
case 'month_size':
case 'year_size':
case 'all_extra':
case 'day_extra':
case 'month_extra':
case 'year_extra':
case 'field_order':
case 'field_separator':
case 'month_value_format':
case 'month_empty':
case 'day_empty':
case 'year_empty':
$$_key = (string)$_value;
break;
case 'all_empty':
$$_key = (string)$_value;
$day_empty = $month_empty = $year_empty = $all_empty;
break;
case 'display_days':
case 'display_months':
case 'display_years':
case 'year_as_text':
case 'reverse_years':
$$_key = (bool)$_value;
break;
default:
if(!is_array($_value)) {
$extra_attrs .= ' '.$_key.'="'.smarty_function_escape_special_chars($_value).'"';
} else {
$smarty->trigger_error("html_select_date: extra attribute '$_key' cannot be an array", E_USER_NOTICE);
}
break;
}
}
if (preg_match('!^-\d+$!', $time)) {
// negative timestamp, use date()
$time = date('Y-m-d', $time);
}
// If $time is not in format yyyy-mm-dd
if (preg_match('/^(\d{0,4}-\d{0,2}-\d{0,2})/', $time, $found)) {
$time = $found[1];
} else {
// use smarty_make_timestamp to get an unix timestamp and
// strftime to make yyyy-mm-dd
$time = strftime('%Y-%m-%d', smarty_make_timestamp($time));
}
// Now split this in pieces, which later can be used to set the select
$time = explode("-", $time);
// make syntax "+N" or "-N" work with start_year and end_year
if (preg_match('!^(\+|\-)\s*(\d+)$!', $end_year, $match)) {
if ($match[1] == '+') {
$end_year = strftime('%Y') + $match[2];
} else {
$end_year = strftime('%Y') - $match[2];
}
}
if (preg_match('!^(\+|\-)\s*(\d+)$!', $start_year, $match)) {
if ($match[1] == '+') {
$start_year = strftime('%Y') + $match[2];
} else {
$start_year = strftime('%Y') - $match[2];
}
}
if (strlen($time[0]) > 0) {
if ($start_year > $time[0] && !isset($params['start_year'])) {
// force start year to include given date if not explicitly set
$start_year = $time[0];
}
if($end_year < $time[0] && !isset($params['end_year'])) {
// force end year to include given date if not explicitly set
$end_year = $time[0];
}
}
$field_order = strtoupper($field_order);
$html_result = $month_result = $day_result = $year_result = "";
$field_separator_count = -1;
if ($display_months) {
$field_separator_count++;
$month_names = array();
$month_values = array();
if(isset($month_empty)) {
$month_names[''] = $month_empty;
$month_values[''] = '';
}
for ($i = 1; $i <= 12; $i++) {
$month_names[$i] = strftime($month_format, mktime(0, 0, 0, $i, 1, 2000));
$month_values[$i] = strftime($month_value_format, mktime(0, 0, 0, $i, 1, 2000));
}
$month_result .= '<select name=';
if (null !== $field_array){
$month_result .= '"' . $field_array . '[' . $prefix . 'Month]"';
} else {
$month_result .= '"' . $prefix . 'Month"';
}
if (null !== $month_size){
$month_result .= ' size="' . $month_size . '"';
}
if (null !== $month_extra){
$month_result .= ' ' . $month_extra;
}
if (null !== $all_extra){
$month_result .= ' ' . $all_extra;
}
$month_result .= $extra_attrs . '>'."\n";
$month_result .= smarty_function_html_options(array('output' => $month_names,
'values' => $month_values,
'selected' => (int)$time[1] ? strftime($month_value_format, mktime(0, 0, 0, (int)$time[1], 1, 2000)) : '',
'print_result' => false),
$smarty);
$month_result .= '</select>';
}
if ($display_days) {
$field_separator_count++;
$days = array();
if (isset($day_empty)) {
$days[''] = $day_empty;
$day_values[''] = '';
}
for ($i = 1; $i <= 31; $i++) {
$days[] = sprintf($day_format, $i);
$day_values[] = sprintf($day_value_format, $i);
}
$day_result .= '<select name=';
if (null !== $field_array){
$day_result .= '"' . $field_array . '[' . $prefix . 'Day]"';
} else {
$day_result .= '"' . $prefix . 'Day"';
}
if (null !== $day_size){
$day_result .= ' size="' . $day_size . '"';
}
if (null !== $all_extra){
$day_result .= ' ' . $all_extra;
}
if (null !== $day_extra){
$day_result .= ' ' . $day_extra;
}
$day_result .= $extra_attrs . '>'."\n";
$day_result .= smarty_function_html_options(array('output' => $days,
'values' => $day_values,
'selected' => $time[2],
'print_result' => false),
$smarty);
$day_result .= '</select>';
}
if ($display_years) {
$field_separator_count++;
if (null !== $field_array){
$year_name = $field_array . '[' . $prefix . 'Year]';
} else {
$year_name = $prefix . 'Year';
}
if ($year_as_text) {
$year_result .= '<input type="text" name="' . $year_name . '" value="' . $time[0] . '" size="4" maxlength="4"';
if (null !== $all_extra){
$year_result .= ' ' . $all_extra;
}
if (null !== $year_extra){
$year_result .= ' ' . $year_extra;
}
$year_result .= ' />';
} else {
$years = range((int)$start_year, (int)$end_year);
if ($reverse_years) {
rsort($years, SORT_NUMERIC);
} else {
sort($years, SORT_NUMERIC);
}
$yearvals = $years;
if(isset($year_empty)) {
array_unshift($years, $year_empty);
array_unshift($yearvals, '');
}
$year_result .= '<select name="' . $year_name . '"';
if (null !== $year_size){
$year_result .= ' size="' . $year_size . '"';
}
if (null !== $all_extra){
$year_result .= ' ' . $all_extra;
}
if (null !== $year_extra){
$year_result .= ' ' . $year_extra;
}
$year_result .= $extra_attrs . '>'."\n";
$year_result .= smarty_function_html_options(array('output' => $years,
'values' => $yearvals,
'selected' => $time[0],
'print_result' => false),
$smarty);
$year_result .= '</select>';
}
}
// Loop thru the field_order field
for ($i = 0; $i <= 2; $i++){
$c = substr($field_order, $i, 1);
switch ($c){
case 'D':
$html_result .= $day_result;
break;
case 'M':
$html_result .= $month_result;
break;
case 'Y':
$html_result .= $year_result;
break;
}
// Add the field seperator
if($i < $field_separator_count) {
$html_result .= $field_separator;
}
}
return $html_result;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,194 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_select_time} function plugin
*
* Type: function<br>
* Name: html_select_time<br>
* Purpose: Prints the dropdowns for time selection
* @link http://smarty.php.net/manual/en/language.function.html.select.time.php {html_select_time}
* (Smarty online manual)
* @author Roberto Berto <roberto@berto.net>
* @credits Monte Ohrt <monte AT ohrt DOT com>
* @param array
* @param Smarty
* @return string
* @uses smarty_make_timestamp()
*/
function smarty_function_html_select_time($params, &$smarty)
{
require_once $smarty->_get_plugin_filepath('shared','make_timestamp');
require_once $smarty->_get_plugin_filepath('function','html_options');
/* Default values. */
$prefix = "Time_";
$time = time();
$display_hours = true;
$display_minutes = true;
$display_seconds = true;
$display_meridian = true;
$use_24_hours = true;
$minute_interval = 1;
$second_interval = 1;
/* Should the select boxes be part of an array when returned from PHP?
e.g. setting it to "birthday", would create "birthday[Hour]",
"birthday[Minute]", "birthday[Seconds]" & "birthday[Meridian]".
Can be combined with prefix. */
$field_array = null;
$all_extra = null;
$hour_extra = null;
$minute_extra = null;
$second_extra = null;
$meridian_extra = null;
foreach ($params as $_key=>$_value) {
switch ($_key) {
case 'prefix':
case 'time':
case 'field_array':
case 'all_extra':
case 'hour_extra':
case 'minute_extra':
case 'second_extra':
case 'meridian_extra':
$$_key = (string)$_value;
break;
case 'display_hours':
case 'display_minutes':
case 'display_seconds':
case 'display_meridian':
case 'use_24_hours':
$$_key = (bool)$_value;
break;
case 'minute_interval':
case 'second_interval':
$$_key = (int)$_value;
break;
default:
$smarty->trigger_error("[html_select_time] unknown parameter $_key", E_USER_WARNING);
}
}
$time = smarty_make_timestamp($time);
$html_result = '';
if ($display_hours) {
$hours = $use_24_hours ? range(0, 23) : range(1, 12);
$hour_fmt = $use_24_hours ? '%H' : '%I';
for ($i = 0, $for_max = count($hours); $i < $for_max; $i++)
$hours[$i] = sprintf('%02d', $hours[$i]);
$html_result .= '<select name=';
if (null !== $field_array) {
$html_result .= '"' . $field_array . '[' . $prefix . 'Hour]"';
} else {
$html_result .= '"' . $prefix . 'Hour"';
}
if (null !== $hour_extra){
$html_result .= ' ' . $hour_extra;
}
if (null !== $all_extra){
$html_result .= ' ' . $all_extra;
}
$html_result .= '>'."\n";
$html_result .= smarty_function_html_options(array('output' => $hours,
'values' => $hours,
'selected' => strftime($hour_fmt, $time),
'print_result' => false),
$smarty);
$html_result .= "</select>\n";
}
if ($display_minutes) {
$all_minutes = range(0, 59);
for ($i = 0, $for_max = count($all_minutes); $i < $for_max; $i+= $minute_interval)
$minutes[] = sprintf('%02d', $all_minutes[$i]);
$selected = intval(floor(strftime('%M', $time) / $minute_interval) * $minute_interval);
$html_result .= '<select name=';
if (null !== $field_array) {
$html_result .= '"' . $field_array . '[' . $prefix . 'Minute]"';
} else {
$html_result .= '"' . $prefix . 'Minute"';
}
if (null !== $minute_extra){
$html_result .= ' ' . $minute_extra;
}
if (null !== $all_extra){
$html_result .= ' ' . $all_extra;
}
$html_result .= '>'."\n";
$html_result .= smarty_function_html_options(array('output' => $minutes,
'values' => $minutes,
'selected' => $selected,
'print_result' => false),
$smarty);
$html_result .= "</select>\n";
}
if ($display_seconds) {
$all_seconds = range(0, 59);
for ($i = 0, $for_max = count($all_seconds); $i < $for_max; $i+= $second_interval)
$seconds[] = sprintf('%02d', $all_seconds[$i]);
$selected = intval(floor(strftime('%S', $time) / $second_interval) * $second_interval);
$html_result .= '<select name=';
if (null !== $field_array) {
$html_result .= '"' . $field_array . '[' . $prefix . 'Second]"';
} else {
$html_result .= '"' . $prefix . 'Second"';
}
if (null !== $second_extra){
$html_result .= ' ' . $second_extra;
}
if (null !== $all_extra){
$html_result .= ' ' . $all_extra;
}
$html_result .= '>'."\n";
$html_result .= smarty_function_html_options(array('output' => $seconds,
'values' => $seconds,
'selected' => $selected,
'print_result' => false),
$smarty);
$html_result .= "</select>\n";
}
if ($display_meridian && !$use_24_hours) {
$html_result .= '<select name=';
if (null !== $field_array) {
$html_result .= '"' . $field_array . '[' . $prefix . 'Meridian]"';
} else {
$html_result .= '"' . $prefix . 'Meridian"';
}
if (null !== $meridian_extra){
$html_result .= ' ' . $meridian_extra;
}
if (null !== $all_extra){
$html_result .= ' ' . $all_extra;
}
$html_result .= '>'."\n";
$html_result .= smarty_function_html_options(array('output' => array('AM', 'PM'),
'values' => array('am', 'pm'),
'selected' => strtolower(strftime('%p', $time)),
'print_result' => false),
$smarty);
$html_result .= "</select>\n";
}
return $html_result;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,177 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_table} function plugin
*
* Type: function<br>
* Name: html_table<br>
* Date: Feb 17, 2003<br>
* Purpose: make an html table from an array of data<br>
* Input:<br>
* - loop = array to loop through
* - cols = number of columns, comma separated list of column names
* or array of column names
* - rows = number of rows
* - table_attr = table attributes
* - th_attr = table heading attributes (arrays are cycled)
* - tr_attr = table row attributes (arrays are cycled)
* - td_attr = table cell attributes (arrays are cycled)
* - trailpad = value to pad trailing cells with
* - caption = text for caption element
* - vdir = vertical direction (default: "down", means top-to-bottom)
* - hdir = horizontal direction (default: "right", means left-to-right)
* - inner = inner loop (default "cols": print $loop line by line,
* $loop will be printed column by column otherwise)
*
*
* Examples:
* <pre>
* {table loop=$data}
* {table loop=$data cols=4 tr_attr='"bgcolor=red"'}
* {table loop=$data cols="first,second,third" tr_attr=$colors}
* </pre>
* @author Monte Ohrt <monte at ohrt dot com>
* @author credit to Messju Mohr <messju at lammfellpuschen dot de>
* @author credit to boots <boots dot smarty at yahoo dot com>
* @version 1.1
* @link http://smarty.php.net/manual/en/language.function.html.table.php {html_table}
* (Smarty online manual)
* @param array
* @param Smarty
* @return string
*/
function smarty_function_html_table($params, &$smarty)
{
$table_attr = 'border="1"';
$tr_attr = '';
$th_attr = '';
$td_attr = '';
$cols = $cols_count = 3;
$rows = 3;
$trailpad = '&nbsp;';
$vdir = 'down';
$hdir = 'right';
$inner = 'cols';
$caption = '';
if (!isset($params['loop'])) {
$smarty->trigger_error("html_table: missing 'loop' parameter");
return;
}
foreach ($params as $_key=>$_value) {
switch ($_key) {
case 'loop':
$$_key = (array)$_value;
break;
case 'cols':
if (is_array($_value) && !empty($_value)) {
$cols = $_value;
$cols_count = count($_value);
} elseif (!is_numeric($_value) && is_string($_value) && !empty($_value)) {
$cols = explode(',', $_value);
$cols_count = count($cols);
} elseif (!empty($_value)) {
$cols_count = (int)$_value;
} else {
$cols_count = $cols;
}
break;
case 'rows':
$$_key = (int)$_value;
break;
case 'table_attr':
case 'trailpad':
case 'hdir':
case 'vdir':
case 'inner':
case 'caption':
$$_key = (string)$_value;
break;
case 'tr_attr':
case 'td_attr':
case 'th_attr':
$$_key = $_value;
break;
}
}
$loop_count = count($loop);
if (empty($params['rows'])) {
/* no rows specified */
$rows = ceil($loop_count/$cols_count);
} elseif (empty($params['cols'])) {
if (!empty($params['rows'])) {
/* no cols specified, but rows */
$cols_count = ceil($loop_count/$rows);
}
}
$output = "<table $table_attr>\n";
if (!empty($caption)) {
$output .= '<caption>' . $caption . "</caption>\n";
}
if (is_array($cols)) {
$cols = ($hdir == 'right') ? $cols : array_reverse($cols);
$output .= "<thead><tr>\n";
for ($r=0; $r<$cols_count; $r++) {
$output .= '<th' . smarty_function_html_table_cycle('th', $th_attr, $r) . '>';
$output .= $cols[$r];
$output .= "</th>\n";
}
$output .= "</tr></thead>\n";
}
$output .= "<tbody>\n";
for ($r=0; $r<$rows; $r++) {
$output .= "<tr" . smarty_function_html_table_cycle('tr', $tr_attr, $r) . ">\n";
$rx = ($vdir == 'down') ? $r*$cols_count : ($rows-1-$r)*$cols_count;
for ($c=0; $c<$cols_count; $c++) {
$x = ($hdir == 'right') ? $rx+$c : $rx+$cols_count-1-$c;
if ($inner!='cols') {
/* shuffle x to loop over rows*/
$x = floor($x/$cols_count) + ($x%$cols_count)*$rows;
}
if ($x<$loop_count) {
$output .= "<td" . smarty_function_html_table_cycle('td', $td_attr, $c) . ">" . $loop[$x] . "</td>\n";
} else {
$output .= "<td" . smarty_function_html_table_cycle('td', $td_attr, $c) . ">$trailpad</td>\n";
}
}
$output .= "</tr>\n";
}
$output .= "</tbody>\n";
$output .= "</table>\n";
return $output;
}
function smarty_function_html_table_cycle($name, $var, $no) {
if(!is_array($var)) {
$ret = $var;
} else {
$ret = $var[$no % count($var)];
}
return ($ret) ? ' '.$ret : '';
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,165 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {mailto} function plugin
*
* Type: function<br>
* Name: mailto<br>
* Date: May 21, 2002
* Purpose: automate mailto address link creation, and optionally
* encode them.<br>
* Input:<br>
* - address = e-mail address
* - text = (optional) text to display, default is address
* - encode = (optional) can be one of:
* * none : no encoding (default)
* * javascript : encode with javascript
* * javascript_charcode : encode with javascript charcode
* * hex : encode with hexidecimal (no javascript)
* - cc = (optional) address(es) to carbon copy
* - bcc = (optional) address(es) to blind carbon copy
* - subject = (optional) e-mail subject
* - newsgroups = (optional) newsgroup(s) to post to
* - followupto = (optional) address(es) to follow up to
* - extra = (optional) extra tags for the href link
*
* Examples:
* <pre>
* {mailto address="me@domain.com"}
* {mailto address="me@domain.com" encode="javascript"}
* {mailto address="me@domain.com" encode="hex"}
* {mailto address="me@domain.com" subject="Hello to you!"}
* {mailto address="me@domain.com" cc="you@domain.com,they@domain.com"}
* {mailto address="me@domain.com" extra='class="mailto"'}
* </pre>
* @link http://smarty.php.net/manual/en/language.function.mailto.php {mailto}
* (Smarty online manual)
* @version 1.2
* @author Monte Ohrt <monte at ohrt dot com>
* @author credits to Jason Sweat (added cc, bcc and subject functionality)
* @param array
* @param Smarty
* @return string
*/
function smarty_function_mailto($params, &$smarty)
{
$extra = '';
if (empty($params['address'])) {
$smarty->trigger_error("mailto: missing 'address' parameter");
return;
} else {
$address = $params['address'];
}
$text = $address;
// netscape and mozilla do not decode %40 (@) in BCC field (bug?)
// so, don't encode it.
$search = array('%40', '%2C');
$replace = array('@', ',');
$mail_parms = array();
foreach ($params as $var=>$value) {
switch ($var) {
case 'cc':
case 'bcc':
case 'followupto':
if (!empty($value))
$mail_parms[] = $var.'='.str_replace($search,$replace,rawurlencode($value));
break;
case 'subject':
case 'newsgroups':
$mail_parms[] = $var.'='.rawurlencode($value);
break;
case 'extra':
case 'text':
$$var = $value;
default:
}
}
$mail_parm_vals = '';
for ($i=0; $i<count($mail_parms); $i++) {
$mail_parm_vals .= (0==$i) ? '?' : '&';
$mail_parm_vals .= $mail_parms[$i];
}
$address .= $mail_parm_vals;
$encode = (empty($params['encode'])) ? 'none' : $params['encode'];
if (!in_array($encode,array('javascript','javascript_charcode','hex','none')) ) {
$smarty->trigger_error("mailto: 'encode' parameter must be none, javascript or hex");
return;
}
if ($encode == 'javascript' ) {
$string = 'document.write(\'<a href="mailto:'.$address.'" '.$extra.'>'.$text.'</a>\');';
$js_encode = '';
for ($x=0; $x < strlen($string); $x++) {
$js_encode .= '%' . bin2hex($string[$x]);
}
return '<script type="text/javascript">eval(unescape(\''.$js_encode.'\'))</script>';
} elseif ($encode == 'javascript_charcode' ) {
$string = '<a href="mailto:'.$address.'" '.$extra.'>'.$text.'</a>';
for($x = 0, $y = strlen($string); $x < $y; $x++ ) {
$ord[] = ord($string[$x]);
}
$_ret = "<script type=\"text/javascript\" language=\"javascript\">\n";
$_ret .= "<!--\n";
$_ret .= "{document.write(String.fromCharCode(";
$_ret .= implode(',',$ord);
$_ret .= "))";
$_ret .= "}\n";
$_ret .= "//-->\n";
$_ret .= "</script>\n";
return $_ret;
} elseif ($encode == 'hex') {
preg_match('!^(.*)(\?.*)$!',$address,$match);
if(!empty($match[2])) {
$smarty->trigger_error("mailto: hex encoding does not work with extra attributes. Try javascript.");
return;
}
$address_encode = '';
for ($x=0; $x < strlen($address); $x++) {
if(preg_match('!\w!',$address[$x])) {
$address_encode .= '%' . bin2hex($address[$x]);
} else {
$address_encode .= $address[$x];
}
}
$text_encode = '';
for ($x=0; $x < strlen($text); $x++) {
$text_encode .= '&#x' . bin2hex($text[$x]).';';
}
$mailto = "&#109;&#97;&#105;&#108;&#116;&#111;&#58;";
return '<a href="'.$mailto.$address_encode.'" '.$extra.'>'.$text_encode.'</a>';
} else {
// no encoding
return '<a href="mailto:'.$address.'" '.$extra.'>'.$text.'</a>';
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,84 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {math} function plugin
*
* Type: function<br>
* Name: math<br>
* Purpose: handle math computations in template<br>
* @link http://smarty.php.net/manual/en/language.function.math.php {math}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string
*/
function smarty_function_math($params, &$smarty)
{
// be sure equation parameter is present
if (empty($params['equation'])) {
$smarty->trigger_error("math: missing equation parameter");
return;
}
$equation = $params['equation'];
// make sure parenthesis are balanced
if (substr_count($equation,"(") != substr_count($equation,")")) {
$smarty->trigger_error("math: unbalanced parenthesis");
return;
}
// match all vars in equation, make sure all are passed
preg_match_all("!(?:0x[a-fA-F0-9]+)|([a-zA-Z][a-zA-Z0-9_]+)!",$equation, $match);
$allowed_funcs = array('int','abs','ceil','cos','exp','floor','log','log10',
'max','min','pi','pow','rand','round','sin','sqrt','srand','tan');
foreach($match[1] as $curr_var) {
if ($curr_var && !in_array($curr_var, array_keys($params)) && !in_array($curr_var, $allowed_funcs)) {
$smarty->trigger_error("math: function call $curr_var not allowed");
return;
}
}
foreach($params as $key => $val) {
if ($key != "equation" && $key != "format" && $key != "assign") {
// make sure value is not empty
if (strlen($val)==0) {
$smarty->trigger_error("math: parameter $key is empty");
return;
}
if (!is_numeric($val)) {
$smarty->trigger_error("math: parameter $key: is not numeric");
return;
}
$equation = preg_replace("/\b$key\b/", " \$params['$key'] ", $equation);
}
}
eval("\$smarty_math_result = ".$equation.";");
if (empty($params['format'])) {
if (empty($params['assign'])) {
return $smarty_math_result;
} else {
$smarty->assign($params['assign'],$smarty_math_result);
}
} else {
if (empty($params['assign'])){
printf($params['format'],$smarty_math_result);
} else {
$smarty->assign($params['assign'],sprintf($params['format'],$smarty_math_result));
}
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,119 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {popup} function plugin
*
* Type: function<br>
* Name: popup<br>
* Purpose: make text pop up in windows via overlib
* @link http://smarty.php.net/manual/en/language.function.popup.php {popup}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string
*/
function smarty_function_popup($params, &$smarty)
{
$append = '';
foreach ($params as $_key=>$_value) {
switch ($_key) {
case 'text':
case 'trigger':
case 'function':
case 'inarray':
$$_key = (string)$_value;
if ($_key == 'function' || $_key == 'inarray')
$append .= ',' . strtoupper($_key) . ",'$_value'";
break;
case 'caption':
case 'closetext':
case 'status':
$append .= ',' . strtoupper($_key) . ",'" . str_replace("'","\'",$_value) . "'";
break;
case 'fgcolor':
case 'bgcolor':
case 'textcolor':
case 'capcolor':
case 'closecolor':
case 'textfont':
case 'captionfont':
case 'closefont':
case 'fgbackground':
case 'bgbackground':
case 'caparray':
case 'capicon':
case 'background':
case 'frame':
$append .= ',' . strtoupper($_key) . ",'$_value'";
break;
case 'textsize':
case 'captionsize':
case 'closesize':
case 'width':
case 'height':
case 'border':
case 'offsetx':
case 'offsety':
case 'snapx':
case 'snapy':
case 'fixx':
case 'fixy':
case 'padx':
case 'pady':
case 'timeout':
case 'delay':
$append .= ',' . strtoupper($_key) . ",$_value";
break;
case 'sticky':
case 'left':
case 'right':
case 'center':
case 'above':
case 'below':
case 'noclose':
case 'autostatus':
case 'autostatuscap':
case 'fullhtml':
case 'hauto':
case 'vauto':
case 'mouseoff':
case 'followmouse':
case 'closeclick':
if ($_value) $append .= ',' . strtoupper($_key);
break;
default:
$smarty->trigger_error("[popup] unknown parameter $_key", E_USER_WARNING);
}
}
if (empty($text) && !isset($inarray) && empty($function)) {
$smarty->trigger_error("overlib: attribute 'text' or 'inarray' or 'function' required");
return false;
}
if (empty($trigger)) { $trigger = "onmouseover"; }
$retval = $trigger . '="return overlib(\''.preg_replace(array("!'!","![\r\n]!"),array("\'",'\r'),$text).'\'';
$retval .= $append . ');"';
if ($trigger == 'onmouseover')
$retval .= ' onmouseout="nd();"';
return $retval;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,40 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {popup_init} function plugin
*
* Type: function<br>
* Name: popup_init<br>
* Purpose: initialize overlib
* @link http://smarty.php.net/manual/en/language.function.popup.init.php {popup_init}
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array
* @param Smarty
* @return string
*/
function smarty_function_popup_init($params, &$smarty)
{
$zindex = 1000;
if (!empty($params['zindex'])) {
$zindex = $params['zindex'];
}
if (!empty($params['src'])) {
return '<div id="overDiv" style="position:absolute; visibility:hidden; z-index:'.$zindex.';"></div>' . "\n"
. '<script type="text/javascript" language="JavaScript" src="'.$params['src'].'"></script>' . "\n";
} else {
$smarty->trigger_error("popup_init: missing src parameter");
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,43 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty capitalize modifier plugin
*
* Type: modifier<br>
* Name: capitalize<br>
* Purpose: capitalize words in the string
* @link http://smarty.php.net/manual/en/language.modifiers.php#LANGUAGE.MODIFIER.CAPITALIZE
* capitalize (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return string
*/
function smarty_modifier_capitalize($string, $uc_digits = false)
{
smarty_modifier_capitalize_ucfirst(null, $uc_digits);
return preg_replace_callback('!\'?\b\w(\w|\')*\b!', 'smarty_modifier_capitalize_ucfirst', $string);
}
function smarty_modifier_capitalize_ucfirst($string, $uc_digits = null)
{
static $_uc_digits = false;
if(isset($uc_digits)) {
$_uc_digits = $uc_digits;
return;
}
if(substr($string[0],0,1) != "'" && !preg_match("!\d!",$string[0]) || $_uc_digits)
return ucfirst($string[0]);
else
return $string[0];
}
?>

View file

@ -0,0 +1,33 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty cat modifier plugin
*
* Type: modifier<br>
* Name: cat<br>
* Date: Feb 24, 2003
* Purpose: catenate a value to a variable
* Input: string to catenate
* Example: {$var|cat:"foo"}
* @link http://smarty.php.net/manual/en/language.modifier.cat.php cat
* (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @version 1.0
* @param string
* @param string
* @return string
*/
function smarty_modifier_cat($string, $cat)
{
return $string . $cat;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,32 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty count_characters modifier plugin
*
* Type: modifier<br>
* Name: count_characteres<br>
* Purpose: count the number of characters in a text
* @link http://smarty.php.net/manual/en/language.modifier.count.characters.php
* count_characters (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param boolean include whitespace in the character count
* @return integer
*/
function smarty_modifier_count_characters($string, $include_spaces = false)
{
if ($include_spaces)
return(strlen($string));
return preg_match_all("/[^\s]/",$string, $match);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,29 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty count_paragraphs modifier plugin
*
* Type: modifier<br>
* Name: count_paragraphs<br>
* Purpose: count the number of paragraphs in a text
* @link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php
* count_paragraphs (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return integer
*/
function smarty_modifier_count_paragraphs($string)
{
// count \r or \n characters
return count(preg_split('/[\r\n]+/', $string));
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,29 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty count_sentences modifier plugin
*
* Type: modifier<br>
* Name: count_sentences
* Purpose: count the number of sentences in a text
* @link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php
* count_sentences (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return integer
*/
function smarty_modifier_count_sentences($string)
{
// find periods with a word before but not after.
return preg_match_all('/[^\s]\.(?!\w)/', $string, $match);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,33 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty count_words modifier plugin
*
* Type: modifier<br>
* Name: count_words<br>
* Purpose: count the number of words in a text
* @link http://smarty.php.net/manual/en/language.modifier.count.words.php
* count_words (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return integer
*/
function smarty_modifier_count_words($string)
{
// split text by ' ',\r,\n,\f,\t
$split_array = preg_split('/\s+/',$string);
// count matches that contain alphanumerics
$word_count = preg_grep('/[a-zA-Z0-9\\x80-\\xff]/', $split_array);
return count($word_count);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,58 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Include the {@link shared.make_timestamp.php} plugin
*/
require_once $smarty->_get_plugin_filepath('shared', 'make_timestamp');
/**
* Smarty date_format modifier plugin
*
* Type: modifier<br>
* Name: date_format<br>
* Purpose: format datestamps via strftime<br>
* Input:<br>
* - string: input date string
* - format: strftime format for output
* - default_date: default date if $string is empty
* @link http://smarty.php.net/manual/en/language.modifier.date.format.php
* date_format (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string
* @param string
* @return string|void
* @uses smarty_make_timestamp()
*/
function smarty_modifier_date_format($string, $format = '%b %e, %Y', $default_date = '')
{
if ($string != '') {
$timestamp = smarty_make_timestamp($string);
} elseif ($default_date != '') {
$timestamp = smarty_make_timestamp($default_date);
} else {
return;
}
if (DIRECTORY_SEPARATOR == '\\') {
$_win_from = array('%D', '%h', '%n', '%r', '%R', '%t', '%T');
$_win_to = array('%m/%d/%y', '%b', "\n", '%I:%M:%S %p', '%H:%M', "\t", '%H:%M:%S');
if (strpos($format, '%e') !== false) {
$_win_from[] = '%e';
$_win_to[] = sprintf('%\' 2d', date('j', $timestamp));
}
if (strpos($format, '%l') !== false) {
$_win_from[] = '%l';
$_win_to[] = sprintf('%\' 2d', date('h', $timestamp));
}
$format = str_replace($_win_from, $_win_to, $format);
}
return strftime($format, $timestamp);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,90 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty debug_print_var modifier plugin
*
* Type: modifier<br>
* Name: debug_print_var<br>
* Purpose: formats variable contents for display in the console
* @link http://smarty.php.net/manual/en/language.modifier.debug.print.var.php
* debug_print_var (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param array|object
* @param integer
* @param integer
* @return string
*/
function smarty_modifier_debug_print_var($var, $depth = 0, $length = 40)
{
$_replace = array(
"\n" => '<i>\n</i>',
"\r" => '<i>\r</i>',
"\t" => '<i>\t</i>'
);
switch (gettype($var)) {
case 'array' :
$results = '<b>Array (' . count($var) . ')</b>';
foreach ($var as $curr_key => $curr_val) {
$results .= '<br>' . str_repeat('&nbsp;', $depth * 2)
. '<b>' . strtr($curr_key, $_replace) . '</b> =&gt; '
. smarty_modifier_debug_print_var($curr_val, ++$depth, $length);
$depth--;
}
break;
case 'object' :
$object_vars = get_object_vars($var);
$results = '<b>' . get_class($var) . ' Object (' . count($object_vars) . ')</b>';
foreach ($object_vars as $curr_key => $curr_val) {
$results .= '<br>' . str_repeat('&nbsp;', $depth * 2)
. '<b> -&gt;' . strtr($curr_key, $_replace) . '</b> = '
. smarty_modifier_debug_print_var($curr_val, ++$depth, $length);
$depth--;
}
break;
case 'boolean' :
case 'NULL' :
case 'resource' :
if (true === $var) {
$results = 'true';
} elseif (false === $var) {
$results = 'false';
} elseif (null === $var) {
$results = 'null';
} else {
$results = htmlspecialchars((string) $var);
}
$results = '<i>' . $results . '</i>';
break;
case 'integer' :
case 'float' :
$results = htmlspecialchars((string) $var);
break;
case 'string' :
$results = strtr($var, $_replace);
if (strlen($var) > $length ) {
$results = substr($var, 0, $length - 3) . '...';
}
$results = htmlspecialchars('"' . $results . '"');
break;
case 'unknown type' :
default :
$results = strtr((string) $var, $_replace);
if (strlen($results) > $length ) {
$results = substr($results, 0, $length - 3) . '...';
}
$results = htmlspecialchars($results);
}
return $results;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,32 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty default modifier plugin
*
* Type: modifier<br>
* Name: default<br>
* Purpose: designate default value for empty variables
* @link http://smarty.php.net/manual/en/language.modifier.default.php
* default (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string
* @return string
*/
function smarty_modifier_default($string, $default = '')
{
if (!isset($string) || $string === '')
return $default;
else
return $string;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,93 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty escape modifier plugin
*
* Type: modifier<br>
* Name: escape<br>
* Purpose: Escape the string according to escapement type
* @link http://smarty.php.net/manual/en/language.modifier.escape.php
* escape (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param html|htmlall|url|quotes|hex|hexentity|javascript
* @return string
*/
function smarty_modifier_escape($string, $esc_type = 'html', $char_set = 'ISO-8859-1')
{
switch ($esc_type) {
case 'html':
return htmlspecialchars($string, ENT_QUOTES, $char_set);
case 'htmlall':
return htmlentities($string, ENT_QUOTES, $char_set);
case 'url':
return rawurlencode($string);
case 'urlpathinfo':
return str_replace('%2F','/',rawurlencode($string));
case 'quotes':
// escape unescaped single quotes
return preg_replace("%(?<!\\\\)'%", "\\'", $string);
case 'hex':
// escape every character into hex
$return = '';
for ($x=0; $x < strlen($string); $x++) {
$return .= '%' . bin2hex($string[$x]);
}
return $return;
case 'hexentity':
$return = '';
for ($x=0; $x < strlen($string); $x++) {
$return .= '&#x' . bin2hex($string[$x]) . ';';
}
return $return;
case 'decentity':
$return = '';
for ($x=0; $x < strlen($string); $x++) {
$return .= '&#' . ord($string[$x]) . ';';
}
return $return;
case 'javascript':
// escape quotes and backslashes, newlines, etc.
return strtr($string, array('\\'=>'\\\\',"'"=>"\\'",'"'=>'\\"',"\r"=>'\\r',"\n"=>'\\n','</'=>'<\/'));
case 'mail':
// safe way to display e-mail address on a web page
return str_replace(array('@', '.'),array(' [AT] ', ' [DOT] '), $string);
case 'nonstd':
// escape non-standard chars, such as ms document quotes
$_res = '';
for($_i = 0, $_len = strlen($string); $_i < $_len; $_i++) {
$_ord = ord(substr($string, $_i, 1));
// non-standard char, escape it
if($_ord >= 126){
$_res .= '&#' . $_ord . ';';
}
else {
$_res .= substr($string, $_i, 1);
}
}
return $_res;
default:
return $string;
}
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,28 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty indent modifier plugin
*
* Type: modifier<br>
* Name: indent<br>
* Purpose: indent lines of text
* @link http://smarty.php.net/manual/en/language.modifier.indent.php
* indent (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param integer
* @param string
* @return string
*/
function smarty_modifier_indent($string,$chars=4,$char=" ")
{
return preg_replace('!^!m',str_repeat($char,$chars),$string);
}
?>

View file

@ -0,0 +1,26 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty lower modifier plugin
*
* Type: modifier<br>
* Name: lower<br>
* Purpose: convert string to lowercase
* @link http://smarty.php.net/manual/en/language.modifier.lower.php
* lower (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return string
*/
function smarty_modifier_lower($string)
{
return strtolower($string);
}
?>

View file

@ -0,0 +1,35 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty plugin
*
* Type: modifier<br>
* Name: nl2br<br>
* Date: Feb 26, 2003
* Purpose: convert \r\n, \r or \n to <<br>>
* Input:<br>
* - contents = contents to replace
* - preceed_test = if true, includes preceeding break tags
* in replacement
* Example: {$text|nl2br}
* @link http://smarty.php.net/manual/en/language.modifier.nl2br.php
* nl2br (Smarty online manual)
* @version 1.0
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @return string
*/
function smarty_modifier_nl2br($string)
{
return nl2br($string);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,30 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty plugin
*
* Type: modifier<br>
* Name: separenombre<br>
* Date: Aug 22, 2008
* Purpose: separe number
* Example: {$text|separenombre}
* @version 1.0
* @author Nemunaire <nemunaire at gmail dot com>
* @param string
* @return string
*/
function smarty_modifier_nom($string, $type)
{
global ${$type};
return ${$type}[$string];
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,48 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty regex_replace modifier plugin
*
* Type: modifier<br>
* Name: regex_replace<br>
* Purpose: regular expression search/replace
* @link http://smarty.php.net/manual/en/language.modifier.regex.replace.php
* regex_replace (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string|array
* @param string|array
* @return string
*/
function smarty_modifier_regex_replace($string, $search, $replace)
{
if(is_array($search)) {
foreach($search as $idx => $s)
$search[$idx] = _smarty_regex_replace_check($s);
} else {
$search = _smarty_regex_replace_check($search);
}
return preg_replace($search, $replace, $string);
}
function _smarty_regex_replace_check($search)
{
if (($pos = strpos($search,"\0")) !== false)
$search = substr($search,0,$pos);
if (preg_match('!([a-zA-Z\s]+)$!s', $search, $match) && (strpos($match[1], 'e') !== false)) {
/* remove eval-modifier from $search */
$search = substr($search, 0, -strlen($match[1])) . preg_replace('![e\s]+!', '', $match[1]);
}
return $search;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,30 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty replace modifier plugin
*
* Type: modifier<br>
* Name: replace<br>
* Purpose: simple search/replace
* @link http://smarty.php.net/manual/en/language.modifier.replace.php
* replace (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string
* @param string
* @return string
*/
function smarty_modifier_replace($string, $search, $replace)
{
return str_replace($search, $replace, $string);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,29 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty plugin
*
* Type: modifier<br>
* Name: separenombre<br>
* Date: Aug 22, 2008
* Purpose: separe number
* Example: {$text|separenombre}
* @version 1.0
* @author Nemunaire <nemunaire at gmail dot com>
* @param string
* @return string
*/
function smarty_modifier_separenombre($string)
{
return number_format(floor($string), 0, ',', ' ');
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,30 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty spacify modifier plugin
*
* Type: modifier<br>
* Name: spacify<br>
* Purpose: add spaces between characters in a string
* @link http://smarty.php.net/manual/en/language.modifier.spacify.php
* spacify (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string
* @return string
*/
function smarty_modifier_spacify($string, $spacify_char = ' ')
{
return implode($spacify_char,
preg_split('//', $string, -1, PREG_SPLIT_NO_EMPTY));
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,43 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty plugin
*
* Type: modifier<br>
* Name: sprintf<br>
* Date: Jan 29, 2009
* Purpose: separe number
* Example: {$text|sprintf:$LANG['test']}
* @version 1.0
* @author Nemunaire <nemunaire at gmail dot com>
* @param string
* @return string
*/
function smarty_modifier_sprintf($string, $var0 = null, $var1 = null, $var2 = null, $var3 = null, $var4 = null, $var5 = null, $var6 = null, $var7 = null, $var8 = null, $var9 = null)
{
for($i = -1; $i<9; $i++) {
if (empty(${'var'.($i+1)})) break;
}
if ($i == 0) return sprintf($string, $var0);
elseif ($i == 1) return sprintf($string, $var0, $var1);
elseif ($i == 2) return sprintf($string, $var0, $var1, $var2);
elseif ($i == 3) return sprintf($string, $var0, $var1, $var2, $var3);
elseif ($i == 4) return sprintf($string, $var0, $var1, $var2, $var3, $var4);
elseif ($i == 5) return sprintf($string, $var0, $var1, $var2, $var3, $var4, $var5);
elseif ($i == 6) return sprintf($string, $var0, $var1, $var2, $var3, $var4, $var5, $var6);
elseif ($i == 7) return sprintf($string, $var0, $var1, $var2, $var3, $var4, $var5, $var6, $var7);
elseif ($i == 8) return sprintf($string, $var0, $var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8);
elseif ($i == 9) return sprintf($string, $var0, $var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8, $var9);
else return $string;
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,29 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty string_format modifier plugin
*
* Type: modifier<br>
* Name: string_format<br>
* Purpose: format strings via sprintf
* @link http://smarty.php.net/manual/en/language.modifier.string.format.php
* string_format (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param string
* @return string
*/
function smarty_modifier_string_format($string, $format)
{
return sprintf($format, $string);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,33 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty strip modifier plugin
*
* Type: modifier<br>
* Name: strip<br>
* Purpose: Replace all repeated spaces, newlines, tabs
* with a single space or supplied replacement string.<br>
* Example: {$var|strip} {$var|strip:"&nbsp;"}
* Date: September 25th, 2002
* @link http://smarty.php.net/manual/en/language.modifier.strip.php
* strip (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @version 1.0
* @param string
* @param string
* @return string
*/
function smarty_modifier_strip($text, $replace = ' ')
{
return preg_replace('!\s+!', $replace, $text);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,32 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty strip_tags modifier plugin
*
* Type: modifier<br>
* Name: strip_tags<br>
* Purpose: strip html tags from text
* @link http://smarty.php.net/manual/en/language.modifier.strip.tags.php
* strip_tags (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param boolean
* @return string
*/
function smarty_modifier_strip_tags($string, $replace_with_space = true)
{
if ($replace_with_space)
return preg_replace('!<[^>]*?>!', ' ', $string);
else
return strip_tags($string);
}
/* vim: set expandtab: */
?>

View file

@ -0,0 +1,50 @@
<?php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty truncate modifier plugin
*
* Type: modifier<br>
* Name: truncate<br>
* Purpose: Truncate a string to a certain length if necessary,
* optionally splitting in the middle of a word, and
* appending the $etc string or inserting $etc into the middle.
* @link http://smarty.php.net/manual/en/language.modifier.truncate.php
* truncate (Smarty online manual)
* @author Monte Ohrt <monte at ohrt dot com>
* @param string
* @param integer
* @param string
* @param boolean
* @param boolean
* @return string
*/
function smarty_modifier_truncate($string, $length = 80, $etc = '...',
$break_words = false, $middle = false)
{
if ($length == 0)
return '';
if (strlen($string) > $length) {
$length -= min($length, strlen($etc));
if (!$break_words && !$middle) {
$string = preg_replace('/\s+?(\S+)?$/', '', substr($string, 0, $length+1));
}
if(!$middle) {
return substr($string, 0, $length) . $etc;
} else {
return substr($string, 0, $length/2) . $etc . substr($string, -$length/2);
}
} else {
return $string;
}
}
/* vim: set expandtab: */
?>

Some files were not shown because too many files have changed in this diff Show more