feat(main): Add base theme: This is the falcon theme out of the box.
This is falcon v3.1.2
This commit is contained in:
221
falcon/templates/_partials/form-fields.tpl
Normal file
221
falcon/templates/_partials/form-fields.tpl
Normal file
@ -0,0 +1,221 @@
|
||||
{**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2017 PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
{$autocomplete = [
|
||||
'firstname' => 'given-name',
|
||||
'lastname' => 'family-name',
|
||||
'email'=>'email',
|
||||
'password'=>'current-password',
|
||||
'new_password'=>'new-password',
|
||||
'postcode'=>'postal-code',
|
||||
'birthday'=>'bday',
|
||||
'address1'=>'street-address',
|
||||
'address2'=>'address-line2',
|
||||
'id_state'=>'address-level1',
|
||||
'city'=>'address-level2',
|
||||
'company'=>'organization'
|
||||
]}
|
||||
{if $field.type == 'hidden'}
|
||||
|
||||
{block name='form_field_item_hidden'}
|
||||
<input type="hidden" name="{$field.name}" value="{$field.value|default}">
|
||||
{/block}
|
||||
|
||||
{else}
|
||||
{assign var=uniqId value=10|mt_rand:100000}
|
||||
|
||||
<div class="form-group js-input-column">
|
||||
{if $field.type == 'checkbox' || $field.type == 'radio-buttons'}
|
||||
{if $field.type == 'radio-buttons'}
|
||||
<div class="form-label label mr-3">{$field.label}</div>
|
||||
{/if}
|
||||
{else}
|
||||
<label class="form-label {if $field.required}required{/if}" for="f-{$field.name}_{$uniqId}">
|
||||
{$field.label}
|
||||
{block name='form_field_comment'}
|
||||
{if (!$field.required && !in_array($field.type, ['radio-buttons', 'checkbox']))}
|
||||
<small class="text-muted">({l s='Optional' d='Shop.Forms.Labels'})</small>
|
||||
{/if}
|
||||
{/block}
|
||||
</label>
|
||||
{/if}
|
||||
|
||||
|
||||
{if $field.type === 'select'}
|
||||
|
||||
{block name='form_field_item_select'}
|
||||
<select class="custom-select wide{if !empty($field.errors)} is-invalid{/if}" name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required} required{/if}>
|
||||
<option value disabled selected>{l s='-- please choose --' d='Shop.Forms.Labels'}</option>
|
||||
{foreach from=$field.availableValues item="label" key="value"}
|
||||
<option value="{$value}" {if $value eq $field.value} selected {/if}>{$label}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'countrySelect'}
|
||||
|
||||
{block name='form_field_item_country'}
|
||||
<select class="custom-select js-country wide{if !empty($field.errors)} is-invalid{/if}" name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required}required{/if}>
|
||||
<option value disabled selected>{l s='-- please choose --' d='Shop.Forms.Labels'}</option>
|
||||
{foreach from=$field.availableValues item="label" key="value"}
|
||||
<option value="{$value}" {if $value eq $field.value} selected {/if}>{$label}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'radio-buttons'}
|
||||
|
||||
{block name='form_field_item_radio'}
|
||||
{foreach from=$field.availableValues item="label" key="value" name="radiolist"}
|
||||
<div class="custom-control custom-radio custom-control-inline">
|
||||
<input name="{$field.name}" type="radio" value="{$value}"
|
||||
class="custom-control-input {if !empty($field.errors)} is-invalid{/if}"
|
||||
id="f-{$field.name}_{$uniqId}-{$smarty.foreach.radiolist.iteration}" {if $field.required}required{/if}
|
||||
{if $value eq $field.value} checked {/if}>
|
||||
|
||||
<label class="custom-control-label"
|
||||
for="f-{$field.name}_{$uniqId}-{$smarty.foreach.radiolist.iteration}">{$label}</label>
|
||||
</div>
|
||||
{/foreach}
|
||||
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'checkbox'}
|
||||
|
||||
{block name='form_field_item_checkbox'}
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input name="{$field.name}" type="checkbox" value="1" id="f-{$field.name}_{$uniqId}"
|
||||
class="custom-control-input{if !empty($field.errors)} is-invalid{/if}" {if $field.value} checked="checked"
|
||||
{/if}{if $field.required} required{/if}>
|
||||
<label class="custom-control-label" for="f-{$field.name}_{$uniqId}">{$field.label|unescape:'html' nofilter}</label>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'date'}
|
||||
|
||||
{block name='form_field_item_date'}
|
||||
<input
|
||||
name="{$field.name}"
|
||||
class="form-control{if !empty($field.errors)} is-invalid{/if}"
|
||||
type="date"
|
||||
value="{$field.value|default}"
|
||||
placeholder="{if isset($field.availableValues.placeholder)}{$field.availableValues.placeholder}{/if}"
|
||||
id="f-{$field.name}_{$uniqId}" {if isset($autocomplete[$field.name])} autocomplete="{$autocomplete[$field.name]}"
|
||||
{/if}>
|
||||
{if isset($field.availableValues.comment)}
|
||||
<span class="form-text text-muted">
|
||||
{$field.availableValues.comment}
|
||||
</span>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'birthday'}
|
||||
|
||||
{block name='form_field_item_birthday'}
|
||||
<div class="js-parent-focus">
|
||||
{html_select_date
|
||||
field_order=DMY
|
||||
time={$field.value}
|
||||
field_array={$field.name}
|
||||
prefix=false
|
||||
reverse_years=true
|
||||
field_separator='<br>'
|
||||
day_extra='class="form-control form-control-select"'
|
||||
month_extra='class="form-control form-control-select"'
|
||||
year_extra='class="form-control form-control-select"'
|
||||
day_empty={l s='-- day --' d='Shop.Forms.Labels'}
|
||||
month_empty={l s='-- month --' d='Shop.Forms.Labels'}
|
||||
year_empty={l s='-- year --' d='Shop.Forms.Labels'}
|
||||
start_year={'Y'|date}-100 end_year={'Y'|date}
|
||||
}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'password'}
|
||||
|
||||
{block name='form_field_item_password'}
|
||||
<div class="input-group js-parent-focus">
|
||||
<input
|
||||
class="form-control js-child-focus js-visible-password{if !empty($field.errors)} is-invalid{/if}"
|
||||
name="{$field.name}"
|
||||
id="f-{$field.name}_{$uniqId}"
|
||||
type="password"
|
||||
value=""
|
||||
{if isset($configuration.password_policy.minimum_length)}data-minlength="{$configuration.password_policy.minimum_length}"{/if}
|
||||
{if isset($configuration.password_policy.maximum_length)}data-maxlength="{$configuration.password_policy.maximum_length}"{/if}
|
||||
{if isset($configuration.password_policy.minimum_score)}data-minscore="{$configuration.password_policy.minimum_score}"{/if}
|
||||
pattern=".{literal}{{/literal}{$configuration.password_policy.minimum_length},{literal}}{/literal}"
|
||||
{if isset($autocomplete[$field.name])}autocomplete="{$autocomplete[$field.name]}" {/if}
|
||||
{if $field.required}required{/if}>
|
||||
<span class="input-group-append">
|
||||
<button class="btn btn-primary" type="button" data-action="show-password"
|
||||
data-text-show="<span class='material-icons d-block'>visibility</span>" data-text-hide="<span class='material-icons d-block'>visibility_off</span>">
|
||||
<span class="material-icons d-block">visibility</span>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
{include file='_partials/form-errors.tpl' errors=$field.errors required=$field.required label=$field.label}
|
||||
{/block}
|
||||
|
||||
{elseif $field.type === 'file'}
|
||||
<div class="custom-file">
|
||||
<input name="{$field.name}" type="file" class="custom-file-input{if !empty($field.errors)} is-invalid{/if}"
|
||||
id="f-{$field.name}_{$uniqId}" {if $field.required} required{/if}>
|
||||
<label class="custom-file-label" for="f-{$field.name}_{$uniqId}">{l s='Choose file' d='Shop.Theme.Actions'}</label>
|
||||
</div>
|
||||
{else}
|
||||
|
||||
{block name='form_field_item_other'}
|
||||
<input
|
||||
class="form-control{if !empty($field.errors)} is-invalid{/if}"
|
||||
name="{$field.name}"
|
||||
type="{if $field.name === "phone"}tel{else}{$field.type}{/if}"
|
||||
value="{$field.value|default}"
|
||||
id="f-{$field.name}_{$uniqId}"
|
||||
{if isset($field.availableValues.placeholder)}placeholder="{$field.availableValues.placeholder}" {/if}
|
||||
{if $field.maxLength}maxlength="{$field.maxLength}" {/if}
|
||||
{if $field.required}required{/if}
|
||||
{if isset($autocomplete[$field.name])} autocomplete="{$autocomplete[$field.name]}" {/if}
|
||||
pattern="^[^\s]+(\s+[^\s]+)*$">
|
||||
{if isset($field.availableValues.comment)}
|
||||
<small class="form-text text-muted">
|
||||
{$field.availableValues.comment}
|
||||
</small>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{/if}
|
||||
|
||||
{block name='form_field_errors'}
|
||||
{if $field.type !== 'password'}
|
||||
{include file='_partials/form-errors.tpl' errors=$field.errors required=$field.required label=$field.label}
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{/if}
|
||||
Reference in New Issue
Block a user