open - Magento-Comment ajouter un sélecteur de date frontend qui renvoie JJ/MM/AA au lieu de MM/JJ/AA?



magento ou prestashop (3)

Dans ma forme j'ai:

<?php echo $this->__('Date') ?>: 
<input type="text" name="cal_date" id="cal_date" value="" /> 
<img title="Select date" id="cal_date_trig" src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN) . 'adminhtml/default/default/images/grid-cal.gif'; ?>"  class="v-middle"/>

Cela montre le calendrier.

Dans l'en-tête j'ai:

<reference name="head">
        <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
        <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
        <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
</reference>

Cela charge le js et le css.

Dans la mise en page xml j'ai:

<block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>

Cela ajoute le sélecteur de calendrier à la page lorsque je l'inclue dans mon modèle:

<?php echo $this->getChildHtml('html_calendar') ?>

Je ne reçois aucune erreur et le sélecteur de date fonctionne.

J'ai défini le format de la date dans le backend sur jj / mm / aa avec les paramètres régionaux en_GB. Cependant, je reçois toujours des formats de date américains. Comment puis-je obtenir des formats de date au Royaume-Uni?

https://src-bin.com


Answer #1

Vous pouvez placer un calendrier sur le formulaire comme ceci:

<input type="text" name="date_to" id="date_to" value="" /> 
<input type="text" name="date_from" id="date_from" value="" />

<script type="text/javascript">// <![CDATA[
Calendar.setup({
    inputField : 'date_from',
    ifFormat : '%m/%e/%y',
    button : 'date_from_trig',
    align : 'Bl',
    singleClick : true
});

Calendar.setup({
    inputField : 'date_to',
    ifFormat : '%m/%e/%y',
    button : 'date_to_trig',
    align : 'Bl',
    singleClick : true
});
// ]]></script>

Answer #2

Vous devez ajouter:

 <block type="core/html_calendar" name="head.calendar" as="calendar" template="page/js/calendar.phtml"/>

dans la tête refernce pour que cela fonctionne dans 1.7


Answer #3

changer le ifFormat en '% e% m% y' change le type d'entrée en d / m / y (ce qui est ce dont j'ai besoin) mais quand je vois les informations du compte, la date est changée en 1970/01/01. devrais-je faire des changements est la base de données pour stocker la date comme d / m / y ??