shop.balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

layout_form.twig (24937B)


      1 {{ header }}{{ column_left }}
      2 <div id="content">
      3   <div class="page-header">
      4     <div class="container-fluid">
      5       <div class="pull-right">
      6         <button type="submit" form="form-layout" data-toggle="tooltip" title="{{ button_save }}" class="btn btn-primary"><i class="fa fa-save"></i></button>
      7         <a href="{{ cancel }}" data-toggle="tooltip" title="{{ button_cancel }}" class="btn btn-default"><i class="fa fa-reply"></i></a></div>
      8       <h1>{{ heading_title }}</h1>
      9       <ul class="breadcrumb">
     10         {% for breadcrumb in breadcrumbs %}
     11         <li><a href="{{ breadcrumb.href }}">{{ breadcrumb.text }}</a></li>
     12         {% endfor %}
     13       </ul>
     14     </div>
     15   </div>
     16   <div class="container-fluid">
     17     {% if error_warning %}
     18     <div class="alert alert-danger alert-dismissible"><i class="fa fa-exclamation-circle"></i> {{ error_warning }}
     19       <button type="button" class="close" data-dismiss="alert">&times;</button>
     20     </div>
     21     {% endif %}
     22     <div class="panel panel-default">
     23       <div class="panel-heading">
     24         <h3 class="panel-title"><i class="fa fa-pencil"></i> {{ text_form }}</h3>
     25       </div>
     26       <div class="panel-body">
     27         <form action="{{ action }}" method="post" enctype="multipart/form-data" id="form-layout" class="form-horizontal">
     28           <fieldset>
     29             <legend>{{ text_route }}</legend>
     30             <div class="form-group required">
     31               <label class="col-sm-2 control-label" for="input-name">{{ entry_name }}</label>
     32               <div class="col-sm-10">
     33                 <input type="text" name="name" value="{{ name }}" placeholder="{{ entry_name }}" id="input-name" class="form-control" />
     34                 {% if error_name %}
     35                 <div class="text-danger">{{ error_name }}</div>
     36                 {% endif %}
     37               </div>
     38             </div>
     39             <table id="route" class="table table-striped table-bordered table-hover">
     40               <thead>
     41                 <tr>
     42                   <td class="text-left">{{ entry_store }}</td>
     43                   <td class="text-left">{{ entry_route }}</td>
     44                   <td></td>
     45                 </tr>
     46               </thead>
     47               <tbody>
     48                 {% set route_row = 0 %}
     49                 {% for layout_route in layout_routes %}
     50                 <tr id="route-row{{ route_row }}">
     51                   <td class="text-left"><select name="layout_route[{{ route_row }}][store_id]" class="form-control">
     52                       <option value="0">{{ text_default }}</option>
     53                       {% for store in stores %}
     54                       {% if store.store_id == layout_route.store_id %}
     55                       <option value="{{ store.store_id }}" selected="selected">{{ store.name }}</option>
     56                       {% else %}
     57                       <option value="{{ store.store_id }}">{{ store.name }}</option>
     58                       {% endif %}
     59                       {% endfor %}
     60                     </select></td>
     61                   <td class="text-left"><input type="text" name="layout_route[{{ route_row }}][route]" value="{{ layout_route.route }}" placeholder="{{ entry_route }}" class="form-control" /></td>
     62                   <td class="text-left"><button type="button" onclick="$('#route-row{{ route_row }}').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger"><i class="fa fa-minus-circle"></i></button></td>
     63                 </tr>
     64                 {% set route_row = route_row + 1 %}
     65                 {% endfor %}
     66               </tbody>
     67               <tfoot>
     68                 <tr>
     69                   <td colspan="2"></td>
     70                   <td class="text-left"><button type="button" onclick="addRoute();" data-toggle="tooltip" title="{{ button_route_add }}" class="btn btn-primary"><i class="fa fa-plus-circle"></i></button></td>
     71                 </tr>
     72               </tfoot>
     73             </table>
     74           </fieldset>
     75           <fieldset>
     76             <legend>{{ text_module }}</legend>
     77             {% set module_row = 0 %}
     78             <div class="row">
     79               <div class="col-lg-3 col-md-4 col-sm-12">
     80                 <table id="module-column-left" class="table table-striped table-bordered table-hover">
     81                   <thead>
     82                     <tr>
     83                       <td class="text-center">{{ text_column_left }}</td>
     84                     </tr>
     85                   </thead>
     86                   <tbody>
     87                     {% for layout_module in layout_modules %}
     88                     {% if layout_module.position == 'column_left' %}
     89                     <tr id="module-row{{ module_row }}">
     90                       <td class="text-left"><div class="input-group">
     91                           <select name="layout_module[{{ module_row }}][code]" class="form-control input-sm">
     92                             {% for extension in extensions %}
     93                             <optgroup label="{{ extension.name }}">
     94                             {% if not extension.module %}
     95                             {% if extension.code == layout_module.code %}
     96                             <option value="{{ extension.code }}" selected="selected">{{ extension.name }}</option>
     97                             {% else %}
     98                             <option value="{{ extension.code }}">{{ extension.name }}</option>
     99                             {% endif %}
    100                             {% else %}
    101                             {% for module in extension.module %}
    102                             {% if module.code == layout_module.code %}
    103                             <option value="{{ module.code }}" selected="selected">{{ module.name }}</option>
    104                             {% else %}
    105                             <option value="{{ module.code }}">{{ module.name }}</option>
    106                             {% endif %}
    107                             {% endfor %}
    108                             {% endif %}
    109                             </optgroup>
    110                             {% endfor %}
    111                           </select>
    112                           <input type="hidden" name="layout_module[{{ module_row }}][position]" value="{{ layout_module.position }}" />
    113                           <input type="hidden" name="layout_module[{{ module_row }}][sort_order]" value="{{ layout_module.sort_order }}" />
    114                           <div class="input-group-btn"><a href="{{ layout_module.edit }}" type="button" data-toggle="tooltip" title="{{ button_edit }}" target="_blank" class="btn btn-primary btn-sm"><i class="fa fa-pencil"></i></a>
    115                             <button type="button" onclick="$('#module-row{{ module_row }}').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger btn-sm"><i class="fa fa fa-minus-circle"></i></button>
    116                           </div>
    117                         </div></td>
    118                     </tr>
    119                     {% set module_row = module_row + 1 %}
    120                     {% endif %}
    121                     {% endfor %}
    122                   </tbody>
    123                   <tfoot>
    124                     <tr>
    125                       <td class="text-left"><div class="input-group">
    126                           <select class="form-control input-sm">
    127                             <option value=""></option>
    128                             {% for extension in extensions %}
    129                             <optgroup label="{{ extension.name }}">
    130                             {% if not extension.module %}
    131                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    132                             {% else %}
    133                             {% for module in extension.module %}
    134                             <option value="{{ module.code }}">{{ module.name }}</option>
    135                             {% endfor %}
    136                             {% endif %}
    137                             </optgroup>
    138                             {% endfor %}
    139                           </select>
    140                           <div class="input-group-btn">
    141                             <button type="button" onclick="addModule('column-left');" data-toggle="tooltip" title="{{ button_module_add }}" class="btn btn-primary btn-sm"><i class="fa fa-plus-circle"></i></button>
    142                           </div>
    143                         </div></td>
    144                     </tr>
    145                   </tfoot>
    146                 </table>
    147               </div>
    148               <div class="col-lg-6 col-md-4 col-sm-12">
    149                 <table id="module-content-top" class="table table-striped table-bordered table-hover">
    150                   <thead>
    151                     <tr>
    152                       <td class="text-center">{{ text_content_top }}</td>
    153                     </tr>
    154                   </thead>
    155                   <tbody>
    156                     {% for layout_module in layout_modules %}
    157                     {% if layout_module.position == 'content_top' %}
    158                     <tr id="module-row{{ module_row }}">
    159                       <td class="text-left"><div class="input-group">
    160                           <select name="layout_module[{{ module_row }}][code]" class="form-control input-sm">
    161                             {% for extension in extensions %}
    162                             <optgroup label="{{ extension.name }}">
    163                             {% if not extension.module %}
    164                             {% if extension.code == layout_module.code %}
    165                             <option value="{{ extension.code }}" selected="selected">{{ extension.name }}</option>
    166                             {% else %}
    167                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    168                             {% endif %}
    169                             {% else %}
    170                             {% for module in extension.module %}
    171                             {% if module.code == layout_module.code %}
    172                             <option value="{{ module.code }}" selected="selected">{{ module.name }}</option>
    173                             {% else %}
    174                             <option value="{{ module.code }}">{{ module.name }}</option>
    175                             {% endif %}
    176                             {% endfor %}
    177                             {% endif %}
    178                             </optgroup>
    179                             {% endfor %}
    180                           </select>
    181                           <input type="hidden" name="layout_module[{{ module_row }}][position]" value="{{ layout_module.position }}" />
    182                           <input type="hidden" name="layout_module[{{ module_row }}][sort_order]" value="{{ layout_module.sort_order }}" />
    183                           <div class="input-group-btn"> <a href="{{ layout_module.edit }}" type="button" data-toggle="tooltip" title="{{ button_edit }}" target="_blank" class="btn btn-primary btn-sm"><i class="fa fa-pencil"></i></a>
    184                             <button type="button" onclick="$('#module-row{{ module_row }}').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger btn-sm"><i class="fa fa fa-minus-circle"></i></button>
    185                           </div>
    186                         </div></td>
    187                     </tr>
    188                     {% set module_row = module_row + 1 %}
    189                     {% endif %}
    190                     {% endfor %}
    191                   </tbody>
    192                   <tfoot>
    193                     <tr>
    194                       <td class="text-left"><div class="input-group">
    195                           <select class="form-control input-sm">
    196                             <option value=""></option>
    197                             {% for extension in extensions %}
    198                             <optgroup label="{{ extension.name }}">
    199                             {% if not extension.module %}
    200                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    201                             {% else %}
    202                             {% for module in extension.module %}
    203                             <option value="{{ module.code }}">{{ module.name }}</option>
    204                             {% endfor %}
    205                             {% endif %}
    206                             </optgroup>
    207                             {% endfor %}
    208                           </select>
    209                           <div class="input-group-btn">
    210                             <button type="button" onclick="addModule('content-top');" data-toggle="tooltip" title="{{ button_module_add }}" class="btn btn-primary btn-sm"><i class="fa fa-plus-circle"></i></button>
    211                           </div>
    212                         </div></td>
    213                     </tr>
    214                   </tfoot>
    215                 </table>
    216                 <table id="module-content-bottom" class="table table-striped table-bordered table-hover">
    217                   <thead>
    218                     <tr>
    219                       <td class="text-center">{{ text_content_bottom }}</td>
    220                     </tr>
    221                   </thead>
    222                   <tbody>
    223                     {% for layout_module in layout_modules %}
    224                     {% if layout_module.position == 'content_bottom' %}
    225                     <tr id="module-row{{ module_row }}">
    226                       <td class="text-left"><div class="input-group">
    227                           <select name="layout_module[{{ module_row }}][code]" class="form-control input-sm">
    228                             {% for extension in extensions %}
    229                             <optgroup label="{{ extension.name }}">
    230                             {% if not extension.module %}
    231                             {% if extension.code == layout_module.code %}
    232                             <option value="{{ extension.code }}" selected="selected">{{ extension.name }}</option>
    233                             {% else %}
    234                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    235                             {% endif %}
    236                             {% else %}
    237                             {% for module in extension.module %}
    238                             {% if module.code == layout_module.code %}
    239                             <option value="{{ module.code }}" selected="selected">{{ module.name }}</option>
    240                             {% else %}
    241                             <option value="{{ module.code }}">{{ module.name }}</option>
    242                             {% endif %}
    243                             {% endfor %}
    244                             {% endif %}
    245                             </optgroup>
    246                             {% endfor %}
    247                           </select>
    248                           <input type="hidden" name="layout_module[{{ module_row }}][position]" value="{{ layout_module.position }}" />
    249                           <input type="hidden" name="layout_module[{{ module_row }}][sort_order]" value="{{ layout_module.sort_order }}" />
    250                           <div class="input-group-btn"><a href="{{ layout_module.edit }}" type="button" data-toggle="tooltip" title="{{ button_edit }}" target="_blank" class="btn btn-primary btn-sm"><i class="fa fa-pencil"></i></a>
    251                             <button type="button" onclick="$('#module-row{{ module_row }}').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger btn-sm"><i class="fa fa fa-minus-circle"></i></button>
    252                           </div>
    253                         </div></td>
    254                     </tr>
    255                     {% set module_row = module_row + 1 %}
    256                     {% endif %}
    257                     {% endfor %}
    258                   </tbody>
    259                   <tfoot>
    260                     <tr>
    261                       <td class="text-left"><div class="input-group">
    262                           <select class="form-control input-sm">
    263                             <option value=""></option>
    264                             {% for extension in extensions %}
    265                             <optgroup label="{{ extension.name }}">
    266                             {% if not extension.module %}
    267                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    268                             {% else %}
    269                             {% for module in extension.module %}
    270                             <option value="{{ module.code }}">{{ module.name }}</option>
    271                             {% endfor %}
    272                             {% endif %}
    273                             </optgroup>
    274                             {% endfor %}
    275                           </select>
    276                           <div class="input-group-btn">
    277                             <button type="button" onclick="addModule('content-bottom');" data-toggle="tooltip" title="{{ button_module_add }}" class="btn btn-primary btn-sm"><i class="fa fa-plus-circle"></i></button>
    278                           </div>
    279                         </div></td>
    280                     </tr>
    281                   </tfoot>
    282                 </table>
    283               </div>
    284               <div class="col-lg-3 col-md-4 col-sm-12">
    285                 <table id="module-column-right" class="table table-striped table-bordered table-hover">
    286                   <thead>
    287                     <tr>
    288                       <td class="text-center">{{ text_column_right }}</td>
    289                     </tr>
    290                   </thead>
    291                   <tbody>
    292                     {% for layout_module in layout_modules %}
    293                     {% if layout_module.position == 'column_right' %}
    294                     <tr id="module-row{{ module_row }}">
    295                       <td class="text-left"><div class="input-group">
    296                           <select name="layout_module[{{ module_row }}][code]" class="form-control input-sm">
    297                             {% for extension in extensions %}
    298                             <optgroup label="{{ extension.name }}">
    299                             {% if not extension.module %}
    300                             {% if extension.code == layout_module.code %}
    301                             <option value="{{ extension.code }}" selected="selected">{{ extension.name }}</option>
    302                             {% else %}
    303                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    304                             {% endif %}
    305                             {% else %}
    306                             {% for module in extension.module %}
    307                             {% if module.code == layout_module.code %}
    308                             <option value="{{ module.code }}" selected="selected">{{ module.name }}</option>
    309                             {% else %}
    310                             <option value="{{ module.code }}">{{ module.name }}</option>
    311                             {% endif %}
    312                             {% endfor %}
    313                             {% endif %}
    314                             </optgroup>
    315                             {% endfor %}
    316                           </select>
    317                           <input type="hidden" name="layout_module[{{ module_row }}][position]" value="{{ layout_module.position }}" />
    318                           <input type="hidden" name="layout_module[{{ module_row }}][sort_order]" value="{{ layout_module.sort_order }}" />
    319                           <div class="input-group-btn"><a href="{{ layout_module.edit }}" data-toggle="tooltip" title="{{ button_edit }}" target="_blank" class="btn btn-primary btn-sm"><i class="fa fa-pencil"></i></a>
    320                             <button type="button" onclick="$('#module-row{{ module_row }}').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger btn-sm"><i class="fa fa fa-minus-circle"></i></button>
    321                           </div>
    322                         </div></td>
    323                     </tr>
    324                     {% set module_row = module_row + 1 %}
    325                     {% endif %}
    326                     {% endfor %}
    327                   </tbody>
    328                   <tfoot>
    329                     <tr>
    330                       <td class="text-left"><div class="input-group">
    331                           <select class="form-control input-sm">
    332                             <option value=""></option>
    333                             {% for extension in extensions %}
    334                             <optgroup label="{{ extension.name }}">
    335                             {% if not extension.module %}
    336                             <option value="{{ extension.code }}">{{ extension.name }}</option>
    337                             {% else %}
    338                             {% for module in extension.module %}
    339                             <option value="{{ module.code }}">{{ module.name }}</option>
    340                             {% endfor %}
    341                             {% endif %}
    342                             </optgroup>
    343                             {% endfor %}
    344                           </select>
    345                           <div class="input-group-btn">
    346                             <button type="button" onclick="addModule('column-right');" data-toggle="tooltip" title="{{ button_module_add }}" class="btn btn-primary btn-sm"><i class="fa fa-plus-circle"></i></button>
    347                           </div>
    348                         </div></td>
    349                     </tr>
    350                   </tfoot>
    351                 </table>
    352               </div>
    353             </div>
    354           </fieldset>
    355         </form>
    356       </div>
    357     </div>
    358   </div>
    359   <script type="text/javascript"><!--
    360 var route_row = {{ route_row }};
    361 
    362 function addRoute() {
    363 	html  = '<tr id="route-row' + route_row + '">';
    364 	html += '  <td class="text-left"><select name="layout_route[' + route_row + '][store_id]" class="form-control">';
    365 	html += '  <option value="0">{{ text_default }}</option>';
    366 	{% for store in stores %}
    367 	html += '<option value="{{ store.store_id }}">{{ store.name|escape('js') }}</option>';
    368 	{% endfor %}
    369 	html += '  </select></td>';
    370 	html += '  <td class="text-left"><input type="text" name="layout_route[' + route_row + '][route]" value="" placeholder="{{ entry_route }}" class="form-control" /></td>';
    371 	html += '  <td class="text-left"><button type="button" onclick="$(\'#route-row' + route_row + '\').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger"><i class="fa fa-minus-circle"></i></button></td>';
    372 	html += '</tr>';
    373 	
    374 	$('#route tbody').append(html);
    375 	
    376 	route_row++;
    377 }
    378 
    379 var module_row = {{ module_row }};
    380 
    381 function addModule(type) {
    382 	html  = '<tr id="module-row' + module_row + '">';
    383     html += '  <td class="text-left"><div class="input-group"><select name="layout_module[' + module_row + '][code]" class="form-control input-sm">';
    384 	{% for extension in extensions %}
    385 	html += '    <optgroup label="{{ extension.name|escape('js') }}">';
    386 	{% if not extension.module %}
    387 	html += '      <option value="{{ extension.code }}">{{ extension.name|escape('js') }}</option>';
    388 	{% else %}
    389 	{% for module in extension.module %}
    390 	html += '      <option value="{{ module.code }}">{{ module.name|escape('js') }}</option>';
    391 	{% endfor %}
    392 	{% endif %}
    393 	html += '    </optgroup>';
    394 	{% endfor %}
    395 	html += '  </select>';
    396     html += '  <input type="hidden" name="layout_module[' + module_row + '][position]" value="' + type.replace('-', '_') + '" />';
    397     html += '  <input type="hidden" name="layout_module[' + module_row + '][sort_order]" value="" />';
    398 	html += '  <div class="input-group-btn"><a href="" target="_blank" type="button" data-toggle="tooltip" title="{{ button_edit }}" class="btn btn-primary btn-sm"><i class="fa fa-pencil"></i></a><button type="button" onclick="$(\'#module-row' + module_row + '\').remove();" data-toggle="tooltip" title="{{ button_remove }}" class="btn btn-danger btn-sm"><i class="fa fa fa-minus-circle"></i></button></div></div></td>';
    399 	html += '</tr>';
    400 	
    401 	$('#module-' + type + ' tbody').append(html);
    402 	
    403 	$('#module-' + type + ' tbody select[name=\'layout_module[' + module_row + '][code]\']').val($('#module-' + type + ' tfoot select').val());
    404 	
    405 	$('#module-' + type + ' select[name*=\'code\']').trigger('change');
    406 		
    407 	$('#module-' + type + ' tbody input[name*=\'sort_order\']').each(function(i, element) {
    408 		$(element).val(i);
    409 	});
    410 	
    411 	module_row++;
    412 }
    413 
    414 $('#module-column-left, #module-column-right, #module-content-top, #module-content-bottom').delegate('select[name*=\'code\']', 'change', function() {
    415 	var part = this.value.split('.');
    416 	
    417 	if (!part[1]) {
    418 		$(this).parent().find('a').attr('href', 'index.php?route=extension/module/' + part[0] + '&user_token={{ user_token }}');
    419 	} else {
    420 		$(this).parent().find('a').attr('href', 'index.php?route=extension/module/' + part[0] + '&user_token={{ user_token }}&module_id=' + part[1]);
    421 	}
    422 });
    423 
    424 $('#module-column-left, #module-column-right, #module-content-top, #module-content-bottom').trigger('change');
    425 //--></script> 
    426 </div>
    427 {{ footer }}