12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <?php
- class Template{
- public static function all($template){
- $templates = array();
- foreach (glob(self::dir($template).'*') as $path) {
- $relativePath = str_replace(self::dir($template),'',$path);
- if(is_file($path)){
- $f = fopen($path, 'r');
- $line = fgets($f);
- fclose($f);
- $infos = json_decode($line,true);
-
- $templates[$infos['label']] = array('file'=>$path,'syntax'=>$infos['syntax']);
- }else{
- $templates = array_merge($templates,self::all($template.SLASH.$relativePath));
- }
- }
- return $templates;
- }
- public static function dir($tpl = null){
- return __DIR__.SLASH.'template'.SLASH.(isset($tpl)? $tpl.SLASH:'');
- }
- public static function types(){
- $types = array(
- 'string' => array(
- 'label'=>'Texte',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'user' => array(
- 'label'=>'Utilisateur',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="user" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'longstring' => array(
- 'label'=>'Texte Long',
- 'sql-type'=>'longstring',
- 'input'=>'<textarea id="{{key}}" name="{{key}}" class="form-control"><?php echo ${{entity}}->{{key}}; ?></textarea>'),
- 'wysiwyg' => array(
- 'label'=>'WYSIWYG',
- 'sql-type'=>'longstring',
- 'input'=>'<textarea id="{{key}}" data-type="wysiwyg" name="{{key}}" class="form-control"><?php echo ${{entity}}->{{key}}; ?></textarea>'),
- 'date' => array(
- 'label'=>'Date',
- 'sql-type'=>'date',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="date" title="format jj/mm/aaaa" class="form-control" placeholder="JJ/MM/AAAA" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'hour' => array(
- 'label'=>'Heure',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="hour" title="format hh:mm" class="form-control" placeholder="13:37" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'dictionnary' => array(
- 'label'=>'Liste configurable',
- 'sql-type'=>'int',
- 'input'=>'<select data-type="dictionnary" data-slug="{{key}}" data-depth="1" data-disable-label data-value="<?php echo ${{entity}}->{{key}}; ?>" class="form-control select-control" name="{{key}}" id="{{key}}"></select>'),
- 'int' => array(
- 'label'=>'Entier',
- 'sql-type'=>'int',
- 'input'=>'<input id="{{key}}" name="{{key}}" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="number">'),
- 'float' => array(
- 'label'=>'Décimal',
- 'sql-type'=>'float',
- 'input'=>'<input id="{{key}}" name="{{key}}" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'address' => array(
- 'label'=>'Adresse',
- 'sql-type'=>'longstring',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="location" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'password' => array(
- 'label'=>'Mot de passe',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="password" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'icon' => array(
- 'label'=>'Icône',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="icon" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'decimal' => array(
- 'label'=>'Prix',
- 'sql-type'=>'decimal',
- 'input'=>'<input id="{{key}}" name="{{key}}" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="text">'),
- 'boolean' => array(
- 'label'=>'Booléen',
- 'sql-type'=>'boolean',
- 'input'=>'<input title="" type="checkbox" name="<?php echo ${{entity}}->{{key}}; ?>" id="<?php echo ${{entity}}->{{key}}; ?>" data-class="" data-type="checkbox">'),
- 'mail' => array(
- 'label'=>'E-mail',
- 'sql-type'=>'string',
- 'input'=>'<input id="{{key}}" name="{{key}}" data-type="mail" pattern=".+@.+" class="form-control" placeholder="" value="<?php echo ${{entity}}->{{key}}; ?>" type="email">'),
- );
- return $types;
- }
- }
- ?>
|